@coinmasters/types 3.0.0 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.d.ts +73 -11
- package/dist/index.es.js +192 -78
- package/package.json +5 -5
- package/src/commonTypes.ts +17 -1
- package/src/network.ts +150 -7
package/src/network.ts
CHANGED
@@ -1,21 +1,111 @@
|
|
1
1
|
export enum Chain {
|
2
2
|
Arbitrum = 'ARB',
|
3
3
|
Avalanche = 'AVAX',
|
4
|
+
Base = 'BASE',
|
4
5
|
Binance = 'BNB',
|
5
6
|
BinanceSmartChain = 'BSC',
|
6
7
|
Bitcoin = 'BTC',
|
7
8
|
BitcoinCash = 'BCH',
|
8
9
|
Cosmos = 'GAIA',
|
9
10
|
Dash = 'DASH',
|
11
|
+
Digibyte = 'DGB',
|
10
12
|
Dogecoin = 'DOGE',
|
13
|
+
EOS = 'EOS',
|
11
14
|
Ethereum = 'ETH',
|
12
15
|
Kujira = 'KUJI',
|
13
16
|
Litecoin = 'LTC',
|
14
17
|
Maya = 'MAYA',
|
15
18
|
Optimism = 'OP',
|
19
|
+
Osmosis = 'OSMO',
|
16
20
|
Polygon = 'MATIC',
|
21
|
+
Ripple = 'XRP',
|
17
22
|
THORChain = 'THOR',
|
23
|
+
Zcash = 'ZEC',
|
18
24
|
}
|
25
|
+
|
26
|
+
export function getChainEnumValue(chainStr) {
|
27
|
+
switch (chainStr) {
|
28
|
+
case 'ARB':
|
29
|
+
return Chain.Arbitrum;
|
30
|
+
case 'AVAX':
|
31
|
+
return Chain.Avalanche;
|
32
|
+
case 'BASE':
|
33
|
+
return Chain.Base;
|
34
|
+
case 'BNB':
|
35
|
+
return Chain.Binance;
|
36
|
+
case 'BSC':
|
37
|
+
return Chain.BinanceSmartChain;
|
38
|
+
case 'BTC':
|
39
|
+
return Chain.Bitcoin;
|
40
|
+
case 'BCH':
|
41
|
+
return Chain.BitcoinCash;
|
42
|
+
case 'GAIA':
|
43
|
+
return Chain.Cosmos;
|
44
|
+
case 'DASH':
|
45
|
+
return Chain.Dash;
|
46
|
+
case 'DGB':
|
47
|
+
return Chain.Digibyte;
|
48
|
+
case 'DOGE':
|
49
|
+
return Chain.Dogecoin;
|
50
|
+
case 'EOS':
|
51
|
+
return Chain.EOS;
|
52
|
+
case 'ETH':
|
53
|
+
return Chain.Ethereum;
|
54
|
+
case 'KUJI':
|
55
|
+
return Chain.Kujira;
|
56
|
+
case 'LTC':
|
57
|
+
return Chain.Litecoin;
|
58
|
+
case 'MAYA':
|
59
|
+
return Chain.Maya;
|
60
|
+
case 'OP':
|
61
|
+
return Chain.Optimism;
|
62
|
+
case 'OSMO':
|
63
|
+
return Chain.Osmosis;
|
64
|
+
case 'MATIC':
|
65
|
+
return Chain.Polygon;
|
66
|
+
case 'XRP':
|
67
|
+
return Chain.Ripple;
|
68
|
+
case 'THOR':
|
69
|
+
return Chain.THORChain;
|
70
|
+
case 'ZEC':
|
71
|
+
return Chain.Zcash;
|
72
|
+
default:
|
73
|
+
return undefined;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
|
77
|
+
export const ChainToNetworkId: Record<Chain, string> = {
|
78
|
+
[Chain.Arbitrum]: 'eip155:42161',
|
79
|
+
[Chain.Avalanche]: 'eip155:43114',
|
80
|
+
[Chain.BinanceSmartChain]: 'eip155:56',
|
81
|
+
[Chain.Binance]: 'binance:bnb-beacon-chain',
|
82
|
+
[Chain.BitcoinCash]: 'bip122:000000000000000000651ef99cb9fcbe',
|
83
|
+
[Chain.Bitcoin]: 'bip122:000000000019d6689c085ae165831e93',
|
84
|
+
[Chain.Base]: 'eip155:8453',
|
85
|
+
[Chain.Cosmos]: 'cosmos:cosmoshub-4',
|
86
|
+
[Chain.Dash]: 'bip122:dash-hash',
|
87
|
+
[Chain.Digibyte]: 'bip122:digibytes-hash',
|
88
|
+
[Chain.Dogecoin]: 'bip122:00000000001a91e3dace36e2be3bf030',
|
89
|
+
[Chain.Kujira]: 'cosmos:kaiyo-1',
|
90
|
+
[Chain.EOS]: 'eos:cf057bbfb72640471fd910bcb67639c2',
|
91
|
+
[Chain.Ethereum]: 'eip155:1',
|
92
|
+
[Chain.Litecoin]: 'bip122:12a765e31ffd4059bada1e25190f6e98',
|
93
|
+
[Chain.Maya]: 'cosmos:maya-mainnet-v1',
|
94
|
+
[Chain.Optimism]: 'eip155:10',
|
95
|
+
[Chain.Osmosis]: 'cosmos:osmosis-1',
|
96
|
+
[Chain.Polygon]: 'eip155:137',
|
97
|
+
[Chain.Ripple]: 'ripple:unknown',
|
98
|
+
[Chain.THORChain]: 'cosmos:thorchain-mainnet-v1',
|
99
|
+
[Chain.Zcash]: 'bip122:0000000000196a45',
|
100
|
+
};
|
101
|
+
|
102
|
+
// Inverse mapping from Network ID to Chain enum
|
103
|
+
export const NetworkIdToChain: Record<string, Chain> = {};
|
104
|
+
for (const chain in Chain) {
|
105
|
+
const networkId = ChainToNetworkId[Chain[chain]];
|
106
|
+
NetworkIdToChain[networkId] = Chain[chain];
|
107
|
+
}
|
108
|
+
|
19
109
|
type ChainNameType = keyof typeof Chain;
|
20
110
|
|
21
111
|
export enum ContractAddress {
|
@@ -31,20 +121,26 @@ export enum ContractAddress {
|
|
31
121
|
export enum DerivationPath {
|
32
122
|
ARB = "m/44'/60'/0'/0",
|
33
123
|
AVAX = "m/44'/60'/0'/0",
|
124
|
+
BASE = "m/44'/60'/0'/0",
|
34
125
|
BCH = "m/44'/145'/0'/0",
|
35
126
|
BNB = "m/44'/714'/0'/0",
|
36
127
|
BSC = "m/44'/60'/0'/0",
|
37
128
|
BTC = "m/84'/0'/0'/0",
|
38
129
|
DOGE = "m/44'/3'/0'/0",
|
39
130
|
DASH = "m/44'/5'/0'/0",
|
131
|
+
DGB = "m/44'/20'/0'/0",
|
40
132
|
ETH = "m/44'/60'/0'/0",
|
133
|
+
EOS = "m/44'/194'/0'/0",
|
41
134
|
GAIA = "m/44'/118'/0'/0",
|
42
135
|
KUJI = "m/44'/118'/0'/0",
|
43
136
|
LTC = "m/84'/2'/0'/0",
|
44
137
|
MATIC = "m/44'/60'/0'/0",
|
45
138
|
MAYA = "m/44'/931'/0'/0",
|
46
139
|
OP = "m/44'/60'/0'/0",
|
140
|
+
OSMO = "m/44'/118'/0'/0",
|
141
|
+
XRP = "m/44'/144'/0'/0",
|
47
142
|
THOR = "m/44'/931'/0'/0",
|
143
|
+
ZEC = "m/44'/133'/0'/0",
|
48
144
|
}
|
49
145
|
|
50
146
|
export type DerivationPathArray = [number, number, number, number, number];
|
@@ -52,12 +148,15 @@ export type DerivationPathArray = [number, number, number, number, number];
|
|
52
148
|
export const NetworkDerivationPath: Record<Chain, DerivationPathArray> = {
|
53
149
|
ARB: [44, 60, 0, 0, 0],
|
54
150
|
AVAX: [44, 60, 0, 0, 0],
|
151
|
+
BASE: [44, 60, 0, 0, 0],
|
55
152
|
BCH: [44, 145, 0, 0, 0],
|
56
153
|
BNB: [44, 714, 0, 0, 0],
|
57
154
|
BSC: [44, 60, 0, 0, 0],
|
58
155
|
BTC: [84, 0, 0, 0, 0],
|
59
156
|
DASH: [44, 5, 0, 0, 0],
|
157
|
+
DGB: [44, 20, 0, 0, 0],
|
60
158
|
DOGE: [44, 3, 0, 0, 0],
|
159
|
+
EOS: [44, 194, 0, 0, 0],
|
61
160
|
ETH: [44, 60, 0, 0, 0],
|
62
161
|
GAIA: [44, 118, 0, 0, 0],
|
63
162
|
KUJI: [44, 118, 0, 0, 0],
|
@@ -65,7 +164,10 @@ export const NetworkDerivationPath: Record<Chain, DerivationPathArray> = {
|
|
65
164
|
MATIC: [44, 60, 0, 0, 0],
|
66
165
|
MAYA: [44, 931, 0, 0, 0],
|
67
166
|
OP: [44, 60, 0, 0, 0],
|
167
|
+
OSMO: [44, 118, 0, 0, 0],
|
168
|
+
XRP: [44, 144, 0, 0, 0],
|
68
169
|
THOR: [44, 931, 0, 0, 0],
|
170
|
+
ZEC: [44, 133, 0, 0, 0],
|
69
171
|
};
|
70
172
|
|
71
173
|
export enum BaseDecimal {
|
@@ -76,20 +178,26 @@ export enum BaseDecimal {
|
|
76
178
|
BSC = 18,
|
77
179
|
BTC = 8,
|
78
180
|
DASH = 8,
|
181
|
+
DGB = 8,
|
79
182
|
DOGE = 8,
|
80
183
|
ETH = 18,
|
184
|
+
EOS = 6,
|
81
185
|
GAIA = 6,
|
82
186
|
KUJI = 6,
|
83
187
|
LTC = 8,
|
84
188
|
MATIC = 18,
|
85
189
|
MAYA = 10,
|
86
190
|
OP = 18,
|
191
|
+
OSMO = 6,
|
192
|
+
XRP = 6,
|
87
193
|
THOR = 8,
|
194
|
+
ZEC = 8,
|
88
195
|
}
|
89
196
|
|
90
197
|
export type EVMChain =
|
91
198
|
| Chain.Ethereum
|
92
199
|
| Chain.Avalanche
|
200
|
+
| Chain.Base
|
93
201
|
| Chain.BinanceSmartChain
|
94
202
|
| Chain.Arbitrum
|
95
203
|
| Chain.Optimism
|
@@ -100,41 +208,64 @@ export const EVMChainList: EVMChain[] = [
|
|
100
208
|
Chain.Avalanche,
|
101
209
|
Chain.BinanceSmartChain,
|
102
210
|
Chain.Arbitrum,
|
211
|
+
// Chain.Base,
|
103
212
|
Chain.Optimism,
|
104
213
|
Chain.Polygon,
|
105
214
|
];
|
106
215
|
|
107
216
|
export type UTXOChain = Chain.Bitcoin | Chain.BitcoinCash | Chain.Dogecoin | Chain.Litecoin;
|
108
217
|
|
109
|
-
export const UTXOChainList:
|
218
|
+
export const UTXOChainList: UTXOChain[] = [
|
110
219
|
Chain.Bitcoin,
|
111
220
|
Chain.BitcoinCash,
|
112
221
|
Chain.Dash,
|
222
|
+
Chain.Digibyte,
|
113
223
|
Chain.Dogecoin,
|
114
224
|
Chain.Litecoin,
|
225
|
+
Chain.Zcash,
|
115
226
|
];
|
116
227
|
|
117
228
|
export type CosmosChain =
|
118
229
|
| Chain.Cosmos
|
230
|
+
| Chain.Osmosis
|
119
231
|
| Chain.THORChain
|
120
232
|
| Chain.Binance
|
121
233
|
| Chain.Maya
|
122
234
|
| Chain.Kujira;
|
123
235
|
|
124
|
-
export const CosmosChainList: CosmosChain[] = [
|
236
|
+
export const CosmosChainList: CosmosChain[] = [
|
237
|
+
Chain.Cosmos,
|
238
|
+
Chain.THORChain,
|
239
|
+
Chain.Binance,
|
240
|
+
Chain.Osmosis,
|
241
|
+
];
|
242
|
+
|
243
|
+
export const TCSupportedChainList = [
|
244
|
+
Chain.Avalanche,
|
245
|
+
Chain.Binance,
|
246
|
+
Chain.BinanceSmartChain,
|
247
|
+
Chain.Bitcoin,
|
248
|
+
Chain.BitcoinCash,
|
249
|
+
Chain.Cosmos,
|
250
|
+
Chain.Dogecoin,
|
251
|
+
Chain.Ethereum,
|
252
|
+
Chain.Litecoin,
|
253
|
+
Chain.THORChain,
|
254
|
+
];
|
125
255
|
|
126
256
|
export enum ChainId {
|
127
257
|
Arbitrum = '42161',
|
128
258
|
ArbitrumHex = '0xa4b1',
|
129
259
|
Avalanche = '43114',
|
130
260
|
AvalancheHex = '0xa86a',
|
261
|
+
Base = '8453',
|
131
262
|
Binance = 'Binance-Chain-Tigris',
|
132
263
|
BinanceSmartChain = '56',
|
133
264
|
BinanceSmartChainHex = '0x38',
|
134
265
|
Bitcoin = 'bitcoin',
|
135
266
|
BitcoinCash = 'bitcoincash',
|
136
267
|
Cosmos = 'cosmoshub-4',
|
137
|
-
|
268
|
+
Dash = 'dash',
|
138
269
|
Dogecoin = 'dogecoin',
|
139
270
|
Kujira = 'kaiyo-1',
|
140
271
|
Ethereum = '1',
|
@@ -144,28 +275,31 @@ export enum ChainId {
|
|
144
275
|
MayaStagenet = 'mayachain-stagenet-v1',
|
145
276
|
Optimism = '10',
|
146
277
|
OptimismHex = '0xa',
|
278
|
+
Osmosis = 'osmosis-1',
|
147
279
|
Polygon = '137',
|
148
280
|
PolygonHex = '0x89',
|
149
281
|
THORChain = 'thorchain-mainnet-v1',
|
150
282
|
THORChainStagenet = 'thorchain-stagenet-v2',
|
151
283
|
}
|
152
284
|
|
285
|
+
//TODO move these to pioneer proxy
|
153
286
|
export enum RPCUrl {
|
154
287
|
Arbitrum = 'https://arb1.arbitrum.io/rpc',
|
155
288
|
Avalanche = 'https://node-router.thorswap.net/avalanche-c',
|
156
|
-
Binance = '',
|
289
|
+
Binance = 'https://base.llamarpc.com',
|
157
290
|
BinanceSmartChain = 'https://bsc-dataseed.binance.org',
|
158
291
|
Bitcoin = 'https://node-router.thorswap.net/bitcoin',
|
159
292
|
BitcoinCash = 'https://node-router.thorswap.net/bitcoin-cash',
|
160
293
|
Cosmos = 'https://node-router.thorswap.net/cosmos/rpc',
|
161
294
|
Kujira = 'https://rpc-kujira.synergynodes.com/',
|
162
|
-
Dash = '
|
295
|
+
Dash = 'https://dash.nownodes.io',
|
163
296
|
Dogecoin = 'https://node-router.thorswap.net/dogecoin',
|
164
297
|
Ethereum = 'https://node-router.thorswap.net/ethereum',
|
165
298
|
Litecoin = 'https://node-router.thorswap.net/litecoin',
|
166
299
|
Maya = 'https://tendermint.mayachain.info',
|
167
300
|
MayaStagenet = 'https://stagenet.tendermint.mayachain.info',
|
168
301
|
Optimism = 'https://mainnet.optimism.io',
|
302
|
+
Osmosis = 'https://rpc-osmosis.keplr.app',
|
169
303
|
Polygon = 'https://polygon-rpc.com',
|
170
304
|
THORChain = 'https://rpc.thorswap.net',
|
171
305
|
THORChainStagenet = 'https://stagenet-rpc.ninerealms.com',
|
@@ -178,7 +312,7 @@ export enum ApiUrl {
|
|
178
312
|
MayanodeStagenet = 'https://stagenet.mayanode.mayachain.info',
|
179
313
|
ThornodeMainnet = 'https://thornode.thorswap.net',
|
180
314
|
ThornodeStagenet = 'https://stagenet-thornode.ninerealms.com',
|
181
|
-
ThorswapApi = 'https://api.thorswap.
|
315
|
+
ThorswapApi = 'https://api.thorswap.net',
|
182
316
|
ThorswapStatic = 'https://static.thorswap.net',
|
183
317
|
}
|
184
318
|
|
@@ -233,6 +367,7 @@ export const ChainIdToChain: Record<ChainId, Chain> = {
|
|
233
367
|
[ChainId.BitcoinCash]: Chain.BitcoinCash,
|
234
368
|
[ChainId.Bitcoin]: Chain.Bitcoin,
|
235
369
|
[ChainId.Cosmos]: Chain.Cosmos,
|
370
|
+
[ChainId.Base]: Chain.Base,
|
236
371
|
[ChainId.Dash]: Chain.Dash,
|
237
372
|
[ChainId.Dogecoin]: Chain.Dogecoin,
|
238
373
|
[ChainId.EthereumHex]: Chain.Ethereum,
|
@@ -243,6 +378,7 @@ export const ChainIdToChain: Record<ChainId, Chain> = {
|
|
243
378
|
[ChainId.Maya]: Chain.Maya,
|
244
379
|
[ChainId.OptimismHex]: Chain.Optimism,
|
245
380
|
[ChainId.Optimism]: Chain.Optimism,
|
381
|
+
[ChainId.Osmosis]: Chain.Osmosis,
|
246
382
|
[ChainId.PolygonHex]: Chain.Polygon,
|
247
383
|
[ChainId.Polygon]: Chain.Polygon,
|
248
384
|
[ChainId.THORChainStagenet]: Chain.THORChain,
|
@@ -256,13 +392,20 @@ export const ChainToExplorerUrl: Record<Chain, string> = {
|
|
256
392
|
[Chain.Binance]: 'https://explorer.binance.org',
|
257
393
|
[Chain.BitcoinCash]: 'https://www.blockchain.com/bch',
|
258
394
|
[Chain.Bitcoin]: 'https://blockstream.info',
|
395
|
+
[Chain.Base]: 'https://basescan.org',
|
259
396
|
[Chain.Cosmos]: 'https://cosmos.bigdipper.live',
|
397
|
+
[Chain.Dash]: 'https://blockchair.com/dash',
|
398
|
+
[Chain.Digibyte]: 'https://chainz.cryptoid.info/dgb',
|
260
399
|
[Chain.Dogecoin]: 'https://blockchair.com/dogecoin',
|
261
400
|
[Chain.Kujira]: 'https://finder.kujira.network/kaiyo-1',
|
401
|
+
[Chain.EOS]: 'https://eosauthority.com/',
|
262
402
|
[Chain.Ethereum]: 'https://etherscan.io',
|
263
403
|
[Chain.Litecoin]: 'https://ltc.bitaps.com',
|
264
404
|
[Chain.Maya]: 'https://www.mayascan.org',
|
265
405
|
[Chain.Optimism]: 'https://optimistic.etherscan.io',
|
406
|
+
[Chain.Osmosis]: 'https://www.mintscan.io/osmosis',
|
266
407
|
[Chain.Polygon]: 'https://polygonscan.com',
|
267
|
-
[Chain.
|
408
|
+
[Chain.Ripple]: 'https://xrpscan.com',
|
409
|
+
[Chain.THORChain]: 'https://runescan.io',
|
410
|
+
[Chain.Zcash]: 'https://z.cash/ecosystem/zcash-explorer',
|
268
411
|
};
|