@proton/wrap-constants 0.0.42 → 0.0.46
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/coins.d.ts +9 -1
- package/dist/wrap-constants.cjs.development.js +122 -58
- package/dist/wrap-constants.cjs.development.js.map +1 -1
- package/dist/wrap-constants.cjs.production.min.js +1 -1
- package/dist/wrap-constants.cjs.production.min.js.map +1 -1
- package/dist/wrap-constants.esm.js +122 -58
- package/dist/wrap-constants.esm.js.map +1 -1
- package/package.json +2 -2
- package/src/coins.ts +131 -62
package/dist/coins.d.ts
CHANGED
|
@@ -20,7 +20,11 @@ export declare enum Chains {
|
|
|
20
20
|
HederaMainnet = "Hedera (Mainnet)",
|
|
21
21
|
HederaTestnet = "Hedera (Testnet)",
|
|
22
22
|
DogeMainnet = "Dogecoin",
|
|
23
|
-
CardanoMainnet = "Cardano"
|
|
23
|
+
CardanoMainnet = "Cardano",
|
|
24
|
+
AvalancheXChain = "Avalanche X-Chain",
|
|
25
|
+
AvalancheCChain = "Avalanche C-Chain",
|
|
26
|
+
PolygonMainnet = "Polygon",
|
|
27
|
+
TerraMainnet = "Terra"
|
|
24
28
|
}
|
|
25
29
|
export declare enum Networks {
|
|
26
30
|
Mainnet = "mainnet",
|
|
@@ -81,6 +85,10 @@ export declare const explorerLinkByChain: {
|
|
|
81
85
|
"Hedera (Testnet)": (txid: string) => string;
|
|
82
86
|
Dogecoin: (txid: string) => string;
|
|
83
87
|
Cardano: (txid: string) => string;
|
|
88
|
+
"Avalanche X-Chain": (txid: string) => string;
|
|
89
|
+
"Avalanche C-Chain": (txid: string) => string;
|
|
90
|
+
Polygon: (txid: string) => string;
|
|
91
|
+
Terra: (txid: string) => string;
|
|
84
92
|
};
|
|
85
93
|
export declare const initializeCoins: (protonChain: string) => {
|
|
86
94
|
allCoins: Coin[];
|
|
@@ -28,6 +28,10 @@ var _similarChains, _explorerLinkByChain;
|
|
|
28
28
|
Chains["HederaTestnet"] = "Hedera (Testnet)";
|
|
29
29
|
Chains["DogeMainnet"] = "Dogecoin";
|
|
30
30
|
Chains["CardanoMainnet"] = "Cardano";
|
|
31
|
+
Chains["AvalancheXChain"] = "Avalanche X-Chain";
|
|
32
|
+
Chains["AvalancheCChain"] = "Avalanche C-Chain";
|
|
33
|
+
Chains["PolygonMainnet"] = "Polygon";
|
|
34
|
+
Chains["TerraMainnet"] = "Terra";
|
|
31
35
|
})(exports.Chains || (exports.Chains = {}));
|
|
32
36
|
|
|
33
37
|
(function (Networks) {
|
|
@@ -82,6 +86,14 @@ var explorerLinkByChain = (_explorerLinkByChain = {}, _explorerLinkByChain[expor
|
|
|
82
86
|
return "https://blockchair.com/dogecoin/transaction/" + txid;
|
|
83
87
|
}, _explorerLinkByChain[exports.Chains.CardanoMainnet] = function (txid) {
|
|
84
88
|
return "https://explorer.cardano.org/en/transaction?id=" + txid;
|
|
89
|
+
}, _explorerLinkByChain[exports.Chains.AvalancheXChain] = function (txid) {
|
|
90
|
+
return "https://avascan.info/blockchain/x/tx/" + txid;
|
|
91
|
+
}, _explorerLinkByChain[exports.Chains.AvalancheCChain] = function (txid) {
|
|
92
|
+
return "https://snowtrace.io/tx/" + txid;
|
|
93
|
+
}, _explorerLinkByChain[exports.Chains.PolygonMainnet] = function (txid) {
|
|
94
|
+
return "https://polygonscan.com/tx/" + txid;
|
|
95
|
+
}, _explorerLinkByChain[exports.Chains.TerraMainnet] = function (txid) {
|
|
96
|
+
return "https://terra.stake.id/?#/tx/" + txid;
|
|
85
97
|
}, _explorerLinkByChain);
|
|
86
98
|
var initializeCoins = function initializeCoins(protonChain) {
|
|
87
99
|
var IS_MAINNET = protonChain === 'proton';
|
|
@@ -113,7 +125,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
113
125
|
contract: '0x5DE3939B2F811A61D830E6F52D13B066881412AB',
|
|
114
126
|
hasWithdrawMemo: false
|
|
115
127
|
}] : []),
|
|
116
|
-
image: '/
|
|
128
|
+
image: 'https://www.protonchain.com/images/tokens/eosio-tokenXPR.png',
|
|
117
129
|
coingeckoId: 'proton'
|
|
118
130
|
}, {
|
|
119
131
|
allowSwap: true,
|
|
@@ -158,7 +170,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
158
170
|
contract: '0xA0B86991C6218B36C1D19D4A2E9EB0CE3606EB48',
|
|
159
171
|
hasWithdrawMemo: false
|
|
160
172
|
}] : []),
|
|
161
|
-
image: '/
|
|
173
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXUSDC.png',
|
|
162
174
|
coingeckoId: 'usd-coin'
|
|
163
175
|
}, {
|
|
164
176
|
allowSwap: true,
|
|
@@ -179,7 +191,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
179
191
|
contract: '0xF433089366899D83A9F26A773D59EC7ECF30355E',
|
|
180
192
|
hasWithdrawMemo: false
|
|
181
193
|
}] : []),
|
|
182
|
-
image: '/
|
|
194
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXMT.png',
|
|
183
195
|
coingeckoId: 'metal'
|
|
184
196
|
}, {
|
|
185
197
|
allowSwap: true,
|
|
@@ -208,7 +220,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
208
220
|
contract: undefined,
|
|
209
221
|
hasWithdrawMemo: false
|
|
210
222
|
}] : []),
|
|
211
|
-
image: '/
|
|
223
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXBTC.png',
|
|
212
224
|
coingeckoId: 'bitcoin'
|
|
213
225
|
}, {
|
|
214
226
|
allowSwap: true,
|
|
@@ -237,10 +249,10 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
237
249
|
contract: '0x0000000000000000000000000000000000000000',
|
|
238
250
|
hasWithdrawMemo: false
|
|
239
251
|
}] : []),
|
|
240
|
-
image: '/
|
|
252
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXETH.png',
|
|
241
253
|
coingeckoId: 'ethereum'
|
|
242
254
|
}, {
|
|
243
|
-
allowSwap:
|
|
255
|
+
allowSwap: true,
|
|
244
256
|
allowBridge: false,
|
|
245
257
|
allowLend: false,
|
|
246
258
|
allowBorrow: false,
|
|
@@ -250,8 +262,8 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
250
262
|
xtokenPrecision: 4,
|
|
251
263
|
xtokenContract: 'loan.token',
|
|
252
264
|
wallets: [],
|
|
253
|
-
image: '/
|
|
254
|
-
coingeckoId: ''
|
|
265
|
+
image: 'https://www.protonchain.com/images/tokens/loan.tokenLOAN.png',
|
|
266
|
+
coingeckoId: 'proton-loan'
|
|
255
267
|
}, {
|
|
256
268
|
allowSwap: IS_MAINNET,
|
|
257
269
|
allowBridge: true,
|
|
@@ -279,7 +291,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
279
291
|
contract: '0xDAC17F958D2EE523A2206206994597C13D831EC7',
|
|
280
292
|
hasWithdrawMemo: false
|
|
281
293
|
}] : []),
|
|
282
|
-
image: '/
|
|
294
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXUSDT.png',
|
|
283
295
|
coingeckoId: 'tether'
|
|
284
296
|
}, {
|
|
285
297
|
allowSwap: false,
|
|
@@ -300,7 +312,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
300
312
|
contract: '0x0000000000085D4780B73119B644AE5ECD22B376',
|
|
301
313
|
hasWithdrawMemo: false
|
|
302
314
|
}] : []),
|
|
303
|
-
image: '/
|
|
315
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXTUSD.png',
|
|
304
316
|
coingeckoId: 'true-usd'
|
|
305
317
|
}, {
|
|
306
318
|
allowSwap: false,
|
|
@@ -321,7 +333,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
321
333
|
contract: '0x8E870D67F660D95D5BE530380D0EC0BD388289E1',
|
|
322
334
|
hasWithdrawMemo: false
|
|
323
335
|
}] : []),
|
|
324
|
-
image: '/
|
|
336
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXPAX.png',
|
|
325
337
|
coingeckoId: 'usdp'
|
|
326
338
|
}, {
|
|
327
339
|
allowSwap: false,
|
|
@@ -350,7 +362,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
350
362
|
contract: '0x45804880DE22913DAFE09F4980848ECE6ECBAF78',
|
|
351
363
|
hasWithdrawMemo: false
|
|
352
364
|
}] : []),
|
|
353
|
-
image: '/
|
|
365
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXPAXG.png',
|
|
354
366
|
coingeckoId: 'pax-gold'
|
|
355
367
|
}, {
|
|
356
368
|
allowSwap: IS_MAINNET,
|
|
@@ -379,7 +391,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
379
391
|
contract: '0x1F9840A85D5AF5BF1D1762F925BDADDC4201F984',
|
|
380
392
|
hasWithdrawMemo: false
|
|
381
393
|
}] : []),
|
|
382
|
-
image: '/
|
|
394
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXUNI.png',
|
|
383
395
|
coingeckoId: 'uniswap'
|
|
384
396
|
}, {
|
|
385
397
|
allowSwap: false,
|
|
@@ -400,7 +412,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
400
412
|
contract: '0x111111111117DC0AA78B770FA6A738034120C302',
|
|
401
413
|
hasWithdrawMemo: false
|
|
402
414
|
}] : []),
|
|
403
|
-
image: '/
|
|
415
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXINCH.png',
|
|
404
416
|
coingeckoId: '1inch'
|
|
405
417
|
}, {
|
|
406
418
|
allowSwap: false,
|
|
@@ -421,7 +433,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
421
433
|
contract: '0x514910771AF9CA656AF840DFF83E8264ECF986CA',
|
|
422
434
|
hasWithdrawMemo: false
|
|
423
435
|
}] : []),
|
|
424
|
-
image: '/
|
|
436
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXLINK.png',
|
|
425
437
|
coingeckoId: 'chainlink'
|
|
426
438
|
}, {
|
|
427
439
|
allowSwap: IS_MAINNET,
|
|
@@ -450,7 +462,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
450
462
|
contract: undefined,
|
|
451
463
|
hasWithdrawMemo: false
|
|
452
464
|
}] : []),
|
|
453
|
-
image: '/
|
|
465
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXLTC.png',
|
|
454
466
|
coingeckoId: 'litecoin'
|
|
455
467
|
}, {
|
|
456
468
|
allowSwap: IS_MAINNET,
|
|
@@ -479,7 +491,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
479
491
|
contract: undefined,
|
|
480
492
|
hasWithdrawMemo: false
|
|
481
493
|
}] : []),
|
|
482
|
-
image: '/
|
|
494
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXBCH.png',
|
|
483
495
|
coingeckoId: 'bitcoin-cash'
|
|
484
496
|
}, {
|
|
485
497
|
allowSwap: false,
|
|
@@ -508,7 +520,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
508
520
|
contract: undefined,
|
|
509
521
|
hasWithdrawMemo: true
|
|
510
522
|
}] : []),
|
|
511
|
-
image: '/
|
|
523
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXXLM.png',
|
|
512
524
|
coingeckoId: 'stellar'
|
|
513
525
|
}, {
|
|
514
526
|
allowSwap: IS_MAINNET,
|
|
@@ -521,7 +533,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
521
533
|
xtokenPrecision: 4,
|
|
522
534
|
xtokenContract: 'sense',
|
|
523
535
|
wallets: [],
|
|
524
|
-
image: '/
|
|
536
|
+
image: 'https://www.protonchain.com/images/tokens/senseXSENSE.png',
|
|
525
537
|
coingeckoId: 'sense'
|
|
526
538
|
}, {
|
|
527
539
|
allowSwap: false,
|
|
@@ -542,7 +554,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
542
554
|
contract: undefined,
|
|
543
555
|
hasWithdrawMemo: false
|
|
544
556
|
}] : []),
|
|
545
|
-
image: '/
|
|
557
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXDOT.png',
|
|
546
558
|
coingeckoId: 'polkadot'
|
|
547
559
|
}, {
|
|
548
560
|
allowSwap: true,
|
|
@@ -563,7 +575,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
563
575
|
contract: undefined,
|
|
564
576
|
hasWithdrawMemo: false
|
|
565
577
|
}] : []),
|
|
566
|
-
image: '/
|
|
578
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXBNB.png',
|
|
567
579
|
coingeckoId: 'binancecoin'
|
|
568
580
|
}, {
|
|
569
581
|
allowSwap: true,
|
|
@@ -592,7 +604,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
592
604
|
contract: undefined,
|
|
593
605
|
hasWithdrawMemo: true
|
|
594
606
|
}] : []),
|
|
595
|
-
image: '/
|
|
607
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXEOS.png',
|
|
596
608
|
coingeckoId: 'eos'
|
|
597
609
|
}, {
|
|
598
610
|
allowSwap: IS_MAINNET,
|
|
@@ -613,7 +625,7 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
613
625
|
contract: undefined,
|
|
614
626
|
hasWithdrawMemo: false
|
|
615
627
|
}] : []),
|
|
616
|
-
image: '/
|
|
628
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXDOGE.png',
|
|
617
629
|
coingeckoId: 'dogecoin'
|
|
618
630
|
}, {
|
|
619
631
|
allowSwap: IS_MAINNET,
|
|
@@ -634,69 +646,121 @@ var initializeCoins = function initializeCoins(protonChain) {
|
|
|
634
646
|
contract: undefined,
|
|
635
647
|
hasWithdrawMemo: false
|
|
636
648
|
}] : []),
|
|
637
|
-
image: '/
|
|
649
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXADA.png',
|
|
638
650
|
coingeckoId: 'cardano'
|
|
639
|
-
},
|
|
640
|
-
{
|
|
651
|
+
}, {
|
|
641
652
|
allowSwap: false,
|
|
642
|
-
allowBridge:
|
|
653
|
+
allowBridge: false,
|
|
643
654
|
allowLend: false,
|
|
644
655
|
allowBorrow: false,
|
|
645
|
-
name: '
|
|
646
|
-
coin: '
|
|
647
|
-
xtokenSymbol: '
|
|
648
|
-
xtokenPrecision:
|
|
656
|
+
name: 'Avalanche',
|
|
657
|
+
coin: 'AVAX',
|
|
658
|
+
xtokenSymbol: 'XAVAX',
|
|
659
|
+
xtokenPrecision: 9,
|
|
649
660
|
xtokenContract: 'xtokens',
|
|
650
|
-
wallets: [].concat(
|
|
651
|
-
wallet: '
|
|
652
|
-
symbol: '
|
|
653
|
-
chain: exports.Chains.
|
|
654
|
-
network: exports.Networks.
|
|
655
|
-
precision:
|
|
661
|
+
wallets: [].concat(IS_MAINNET ? [{
|
|
662
|
+
wallet: 'AVAX',
|
|
663
|
+
symbol: 'AVAX',
|
|
664
|
+
chain: exports.Chains.AvalancheXChain,
|
|
665
|
+
network: exports.Networks.Mainnet,
|
|
666
|
+
precision: 9,
|
|
667
|
+
contract: undefined,
|
|
668
|
+
hasWithdrawMemo: false
|
|
669
|
+
}, {
|
|
670
|
+
wallet: 'AVAX',
|
|
671
|
+
symbol: 'AVAX',
|
|
672
|
+
chain: exports.Chains.AvalancheCChain,
|
|
673
|
+
network: exports.Networks.Mainnet,
|
|
674
|
+
precision: 9,
|
|
656
675
|
contract: undefined,
|
|
657
676
|
hasWithdrawMemo: false
|
|
658
677
|
}] : []),
|
|
659
|
-
image: '/
|
|
660
|
-
coingeckoId: '
|
|
678
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXAVAX.png',
|
|
679
|
+
coingeckoId: 'avalanche-2'
|
|
661
680
|
}, {
|
|
662
681
|
allowSwap: false,
|
|
663
682
|
allowBridge: false,
|
|
664
683
|
allowLend: false,
|
|
665
684
|
allowBorrow: false,
|
|
666
|
-
name: '
|
|
667
|
-
coin: '
|
|
668
|
-
xtokenSymbol: '
|
|
669
|
-
xtokenPrecision:
|
|
685
|
+
name: 'Polygon',
|
|
686
|
+
coin: 'MATIC',
|
|
687
|
+
xtokenSymbol: 'XMATIC',
|
|
688
|
+
xtokenPrecision: 8,
|
|
670
689
|
xtokenContract: 'xtokens',
|
|
671
|
-
wallets: []
|
|
672
|
-
|
|
673
|
-
|
|
690
|
+
wallets: [].concat(IS_MAINNET ? [{
|
|
691
|
+
wallet: 'MATIC',
|
|
692
|
+
symbol: 'MATIC',
|
|
693
|
+
chain: exports.Chains.PolygonMainnet,
|
|
694
|
+
network: exports.Networks.Mainnet,
|
|
695
|
+
precision: 18,
|
|
696
|
+
contract: '0x0000000000000000000000000000000000000000',
|
|
697
|
+
hasWithdrawMemo: false
|
|
698
|
+
}] : []),
|
|
699
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXMATIC.png',
|
|
700
|
+
coingeckoId: 'matic-network'
|
|
674
701
|
}, {
|
|
675
702
|
allowSwap: false,
|
|
676
703
|
allowBridge: false,
|
|
677
704
|
allowLend: false,
|
|
678
705
|
allowBorrow: false,
|
|
679
|
-
name: '
|
|
680
|
-
coin: '
|
|
681
|
-
xtokenSymbol: '
|
|
706
|
+
name: 'Luna',
|
|
707
|
+
coin: 'LUNA',
|
|
708
|
+
xtokenSymbol: 'XLUNA',
|
|
682
709
|
xtokenPrecision: 6,
|
|
683
710
|
xtokenContract: 'xtokens',
|
|
684
|
-
wallets: []
|
|
685
|
-
|
|
686
|
-
|
|
711
|
+
wallets: [].concat(IS_MAINNET ? [{
|
|
712
|
+
wallet: 'LUNA',
|
|
713
|
+
symbol: 'LUNA',
|
|
714
|
+
chain: exports.Chains.TerraMainnet,
|
|
715
|
+
network: exports.Networks.Mainnet,
|
|
716
|
+
precision: 6,
|
|
717
|
+
contract: undefined,
|
|
718
|
+
hasWithdrawMemo: true
|
|
719
|
+
}] : []),
|
|
720
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXLUNA.png',
|
|
721
|
+
coingeckoId: 'terra-luna'
|
|
687
722
|
}, {
|
|
688
723
|
allowSwap: false,
|
|
689
724
|
allowBridge: false,
|
|
690
725
|
allowLend: false,
|
|
691
726
|
allowBorrow: false,
|
|
692
|
-
name: '
|
|
693
|
-
coin: '
|
|
694
|
-
xtokenSymbol: '
|
|
727
|
+
name: 'TerraUSD',
|
|
728
|
+
coin: 'UST',
|
|
729
|
+
xtokenSymbol: 'XUST',
|
|
695
730
|
xtokenPrecision: 6,
|
|
696
731
|
xtokenContract: 'xtokens',
|
|
697
|
-
wallets: []
|
|
698
|
-
|
|
699
|
-
|
|
732
|
+
wallets: [].concat(IS_MAINNET ? [{
|
|
733
|
+
wallet: 'UST',
|
|
734
|
+
symbol: 'UST',
|
|
735
|
+
chain: exports.Chains.TerraMainnet,
|
|
736
|
+
network: exports.Networks.Mainnet,
|
|
737
|
+
precision: 6,
|
|
738
|
+
contract: undefined,
|
|
739
|
+
hasWithdrawMemo: true
|
|
740
|
+
}] : []),
|
|
741
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXUST.png',
|
|
742
|
+
coingeckoId: 'terrausd'
|
|
743
|
+
}, {
|
|
744
|
+
allowSwap: false,
|
|
745
|
+
allowBridge: IS_TESTNET,
|
|
746
|
+
allowLend: false,
|
|
747
|
+
allowBorrow: false,
|
|
748
|
+
name: 'HBAR',
|
|
749
|
+
coin: 'HBAR',
|
|
750
|
+
xtokenSymbol: 'XHBAR',
|
|
751
|
+
xtokenPrecision: 6,
|
|
752
|
+
xtokenContract: 'xtokens',
|
|
753
|
+
wallets: [].concat(IS_TESTNET ? [{
|
|
754
|
+
wallet: 'HBAR',
|
|
755
|
+
symbol: 'HBAR',
|
|
756
|
+
chain: exports.Chains.HederaTestnet,
|
|
757
|
+
network: exports.Networks.Testnet,
|
|
758
|
+
precision: 8,
|
|
759
|
+
contract: undefined,
|
|
760
|
+
hasWithdrawMemo: true
|
|
761
|
+
}] : []),
|
|
762
|
+
image: 'https://www.protonchain.com/images/tokens/xtokensXHBAR.png',
|
|
763
|
+
coingeckoId: 'hedera-hashgraph'
|
|
700
764
|
}]; // Validation
|
|
701
765
|
|
|
702
766
|
var walletWithDuplicateChains = coins.find(function (coin) {
|