ccxt 4.2.43 → 4.2.44

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.
@@ -434,247 +434,353 @@ class mexc extends mexc$1 {
434
434
  'defaultNetwork': 'ETH',
435
435
  'defaultNetworks': {
436
436
  'ETH': 'ETH',
437
- 'USDT': 'TRC20',
437
+ 'USDT': 'ERC20',
438
+ 'USDC': 'ERC20',
439
+ 'BTC': 'BTC',
440
+ 'LTC': 'LTC',
438
441
  },
439
442
  'networks': {
440
- 'BTC': 'BTC',
441
- 'BCH': 'BCH',
442
- 'TRC20': 'Tron(TRC20)',
443
- 'ERC20': 'Ethereum(ERC20)',
444
- 'BEP20': 'BNB Smart Chain(BEP20)',
445
- 'OPTIMISM': 'Optimism(OP)',
446
- 'SOL': 'Solana(SOL)',
447
- 'CRC20': 'CRONOS',
443
+ 'ABBC': 'ABBC',
444
+ 'ACA': 'ACALA',
445
+ 'ADA': 'Cardano(ADA)',
446
+ 'AE': 'AE',
448
447
  'ALGO': 'Algorand(ALGO)',
449
- 'XRP': 'XRP',
450
- 'MATIC': 'Polygon(MATIC)',
451
- 'AVAXX': 'AVAX_XCHAIN',
452
- 'AVAXC': 'AvalancheCChain(AVAXCCHAIN)',
453
- 'ARBONE': 'ArbitrumOne(ARB)',
448
+ 'ALPH': 'Alephium(ALPH)',
449
+ 'AME': 'AME',
450
+ 'AOK': 'AOK',
451
+ 'APT': 'APTOS(APT)',
452
+ 'AR': 'AR',
453
+ 'ARB': 'Arbitrum One(ARB)',
454
454
  'ARBNOVA': 'ARBNOVA',
455
- 'FTM': 'FTM',
456
- 'WAVES': 'WAVES',
457
- 'CHZ': 'Chiliz Chain(CHZ)',
458
- 'HRC20': 'HECO',
459
- 'TRC10': 'TRC10',
460
- 'DASH': 'DASH',
461
- 'LTC': 'LTC',
462
- // 'DOGECOIN': [ 'DOGE', 'DOGECHAIN' ], // todo after unification
463
- 'XTZ': 'XTZ',
464
- 'OMNI': 'OMNI',
465
- 'APT': 'APTOS',
466
- 'ONT': 'ONT',
467
- 'BSV': 'BSV',
468
- 'OKC': 'OKT',
455
+ 'ARBONE': 'ArbitrumOne(ARB)',
456
+ 'ARK': 'ARK',
457
+ 'ASTR': 'ASTAR',
458
+ 'ATOM': 'Cosmos(ATOM)',
459
+ 'AVAXC': 'Avalanche C Chain(AVAX CCHAIN)',
460
+ 'AVAXX': 'Avalanche X Chain(AVAX XCHAIN)',
461
+ 'AZERO': 'Aleph Zero(AZERO)',
462
+ 'BCH': 'Bitcoin Cash(BCH)',
463
+ 'BDX': 'BDX',
464
+ 'BEAM': 'BEAM',
465
+ 'BEP2': 'BNB Beacon Chain(BEP2)',
466
+ 'BEP20': 'BNB Smart Chain(BEP20)',
467
+ 'BITCI': 'BITCI',
468
+ 'BNC': 'BNC',
469
+ 'BNCDOT': 'BNCPOLKA',
470
+ 'BOBA': 'BOBA',
471
+ 'BSC': 'BEP20(BSC)',
472
+ 'BSV': 'Bitcoin SV(BSV)',
473
+ 'BTC': 'Bitcoin(BTC)',
474
+ 'BTM': 'BTM2',
469
475
  'CELO': 'CELO',
470
- 'KLAY': 'KLAY',
471
- 'BEP2': 'BEP2',
476
+ 'CFX': 'CFX',
477
+ 'CHZ': 'Chiliz Legacy Chain(CHZ)',
478
+ 'CHZ2': 'Chiliz Chain(CHZ2)',
479
+ 'CKB': 'CKB',
480
+ 'CLORE': 'Clore.ai(CLORE)',
481
+ 'CRC20': 'CRONOS',
482
+ 'CSPR': 'CSPR',
483
+ 'DASH': 'DASH',
484
+ 'DC': 'Dogechain(DC)',
485
+ 'DCR': 'DCR',
486
+ 'DNX': 'Dynex(DNX)',
487
+ 'DOGE': 'Dogecoin(DOGE)',
488
+ 'DOT': 'Polkadot(DOT)',
489
+ 'DYM': 'Dymension(DYM)',
490
+ 'EDG': 'EDG',
472
491
  'EGLD': 'EGLD',
473
492
  'EOS': 'EOS',
474
- 'ZIL': 'ZIL',
493
+ 'ERC20': 'Ethereum(ERC20)',
494
+ 'ETC': 'Ethereum Classic(ETC)',
495
+ 'ETHF': 'ETF',
475
496
  'ETHW': 'ETHW',
476
- 'IOTX': 'IOTX',
497
+ 'EVER': 'EVER',
498
+ 'FET': 'FET',
499
+ 'FIL': 'FIL',
500
+ 'FIO': 'FIO',
501
+ 'FLOW': 'FLOW',
502
+ 'FSN': 'FSN',
503
+ 'FTM': 'Fantom(FTM)',
504
+ 'FUSE': 'FUSE',
505
+ 'GLMR': 'GLMR',
506
+ 'GRIN': 'GRIN',
507
+ 'HBAR': 'Hedera(HBAR)',
508
+ 'HIVE': 'HIVE',
509
+ 'HRC20': 'HECO',
510
+ 'HYDRA': 'HYDRA',
511
+ 'ICP': 'Internet Computer(ICP)',
512
+ 'INDEX': 'Index Chain',
513
+ 'IOST': 'IOST',
477
514
  'IOTA': 'IOTA',
478
- 'SYS': 'SYS',
479
- 'XCH': 'CHIA',
480
- 'KMA': 'KMA',
481
- 'ONE': 'ONE',
482
- 'METIS': 'METIS',
515
+ 'IOTX': 'IOTX',
516
+ 'IRIS': 'IRIS',
517
+ 'KAR': 'KAR',
518
+ 'KAS': 'Kaspa(KAS)',
483
519
  'KAVA': 'KAVA',
484
520
  'KDA': 'KDA',
485
- 'IOST': 'IOST',
486
- 'XEC': 'XEC',
487
- 'VET': 'VET',
488
- 'XLM': 'XLM',
521
+ 'KILT': 'KILT',
522
+ 'KLAY': 'Klaytn(KLAY)',
523
+ 'KMA': 'KMA',
489
524
  'KSM': 'KSM',
490
- 'MOVR': 'MOVR',
491
- 'XMR': 'XMR',
492
525
  'LAT': 'LAT',
493
- 'ETC': 'ETC',
494
- // 'TLOS': 'TELOS', // todo
495
- // 'TELOSCOIN': 'TLOS', // todo
496
- 'GLMR': 'GLMR',
497
- 'DOT': 'DOT',
498
- 'SC': 'SC',
499
- 'ICP': 'ICP',
500
- 'AOK': 'AOK',
501
- 'ZEC': 'ZEC',
502
- 'ACA': 'ACALA',
503
- 'ASTR': 'ASTAR',
504
- 'FIL': 'FIL',
505
- 'NEAR': 'NEAR',
506
- 'OSMO': 'OSMO',
507
- 'SDN': 'SDN',
508
- 'BITCI': 'BITCI',
526
+ 'LAVA': 'Elysium(LAVA)',
527
+ 'LTC': 'Litecoin(LTC)',
528
+ 'LUNA': 'Terra(LUNA)',
529
+ 'MASS': 'MASS',
530
+ 'MATIC': 'Polygon(MATIC)',
531
+ 'MCOIN': 'Mcoin Network',
532
+ 'METIS': 'METIS',
533
+ 'MINA': 'MINA',
534
+ 'MNT': 'Mantle(MNT)',
535
+ 'MOVR': 'MOVR',
536
+ 'MTRG': 'Meter(MTRG)',
537
+ 'NAS': 'NAS',
538
+ 'NEAR': 'NEAR Protocol(NEAR)',
539
+ 'NEBL': 'NEBL',
540
+ 'NEM': 'NEM',
509
541
  'NEO': 'NEO',
510
- 'ADA': 'ADA',
511
- 'RVN': 'RVN',
512
- 'BNC': 'BNC',
513
- 'BNCDOT': 'BNCPOLKA',
514
- 'ETHF': 'ETF',
515
- 'STEEM': 'STEEM',
516
- 'OASYS': 'OASYS',
517
- 'BEAM': 'BEAM',
518
- 'VSYS': 'VSYS',
542
+ 'NEO3': 'NEO3',
543
+ 'NEOXA': 'Neoxa Network',
544
+ 'NULS': 'NULS',
519
545
  'OASIS': 'ROSE',
520
- 'AR': 'AR',
521
- 'AE': 'AE',
546
+ 'OASYS': 'OASYS',
547
+ 'OKC': 'OKT',
548
+ 'OMN': 'Omega Network(OMN)',
549
+ 'OMNI': 'OMNI',
550
+ 'ONE': 'ONE',
551
+ 'ONT': 'ONT',
552
+ 'OPTIMISM': 'Optimism(OP)',
553
+ 'OSMO': 'OSMO',
554
+ 'PLCU': 'PLCU',
555
+ 'POKT': 'POKT',
556
+ 'QKC': 'QKC',
522
557
  'QTUM': 'QTUM',
523
- 'ATOM': 'ATOM',
524
- 'HBAR': 'HBAR',
525
- 'CSPR': 'CSPR',
526
- 'WEMIX': 'WEMIX',
527
- 'SGB': 'SGB',
528
- 'XPR': 'PROTON',
529
- 'HYDRA': 'HYDRA',
558
+ 'RAP20': 'RAP20 (Rangers Mainnet)',
559
+ 'REI': 'REI',
560
+ 'RSK': 'RBTC',
561
+ 'RVN': 'Ravencoin(RVN)',
562
+ 'SATOX': 'Satoxcoin(SATOX)',
563
+ 'SC': 'SC',
530
564
  'SCRT': 'SCRT',
565
+ 'SDN': 'SDN',
566
+ 'SGB': 'SGB',
567
+ 'SOL': 'Solana(SOL)',
568
+ 'STAR': 'STAR',
569
+ 'STARK': 'Starknet(STARK)',
570
+ 'STEEM': 'STEEM',
571
+ 'SYS': 'SYS',
572
+ 'TAO': 'Bittensor(TAO)',
573
+ 'TIA': 'Celestia(TIA)',
531
574
  'TOMO': 'TOMO',
575
+ 'TON': 'Toncoin(TON)',
576
+ 'TRC10': 'TRC10',
577
+ 'TRC20': 'Tron(TRC20)',
578
+ 'UGAS': 'UGAS(Ultrain)',
579
+ 'VET': 'VeChain(VET)',
580
+ 'VEX': 'Vexanium(VEX)',
581
+ 'VSYS': 'VSYS',
582
+ 'WAVES': 'WAVES',
532
583
  'WAX': 'WAX',
533
- 'KAR': 'KAR',
534
- 'KILT': 'KILT',
584
+ 'WEMIX': 'WEMIX',
585
+ 'XCH': 'Chia(XCH)',
535
586
  'XDC': 'XDC',
536
- 'GRIN': 'GRIN',
537
- 'PLCU': 'PLCU',
538
- 'MINA': 'MINA',
539
- 'ABBC': 'ABBC',
540
- 'ZEN': 'ZEN',
541
- 'FLOW': 'FLOW',
542
- 'RSK': 'RBTC',
543
- 'DCR': 'DCR',
544
- 'HIVE': 'HIVE',
545
- 'XYM': 'XYM',
546
- 'CKB': 'CKB',
587
+ 'XEC': 'XEC',
588
+ 'XLM': 'Stellar(XLM)',
589
+ 'XMR': 'Monero(XMR)',
590
+ 'XNA': 'Neurai(XNA)',
591
+ 'XPR': 'XPR Network',
547
592
  'XRD': 'XRD',
593
+ 'XRP': 'Ripple(XRP)',
594
+ 'XTZ': 'XTZ',
548
595
  'XVG': 'XVG',
549
- 'BOBA': 'BOBA',
550
- 'AZERO': 'AZERO',
551
- 'ARK': 'ARK',
552
- 'NULS': 'NULS',
553
- 'POKT': 'POKT',
554
- 'NEO3': 'NEO3',
555
- 'FIO': 'FIO',
556
- 'MASS': 'MASS',
557
- 'AME': 'AME',
558
- 'REI': 'REI',
559
- 'IRIS': 'IRIS',
596
+ 'XYM': 'XYM',
597
+ 'ZEC': 'ZEC',
598
+ 'ZEN': 'ZEN',
599
+ 'ZIL': 'Zilliqa(ZIL)',
560
600
  'ZTG': 'ZTG',
561
- 'EDG': 'EDG',
562
- 'FUSE': 'FUSE',
563
- 'EVER': 'EVER',
564
- 'FET': 'FET',
565
- 'CFX': 'CFX',
566
- 'NEBL': 'NEBL',
567
- 'STAR': 'STAR',
568
- 'NEM': 'NEM',
569
- 'BDX': 'BDX',
570
- 'TON': 'TONCOIN',
571
- 'NAS': 'NAS',
572
- 'QKC': 'QKC',
573
- 'BTM': 'BTM2',
574
- 'FSN': 'FSN',
575
601
  // todo: uncomment below after concensus
576
- // 'TERRACLASSIC': 'LUNC',
577
- // 'TERRA': 'LUNA2',
578
- // 'PHALA': 'Khala',
579
- // 'NODLE': 'NODLE',
580
- // 'KUJIRA': 'KUJI',
581
- // 'HUAHUA': 'HUAHUA',
582
- // 'FRUITS': 'FRTS',
583
- // 'IOEX': 'IOEX',
584
- // 'TOMAINFO': 'TON',
602
+ // 'ALAYA': 'ATP',
603
+ // 'ANDUSCHAIN': 'DEB',
604
+ // 'ASSETMANTLE': 'MNTL',
605
+ // 'AXE': 'AXE',
585
606
  // 'BITCOINHD': 'BHD',
607
+ // 'BITCOINVAULT': 'BTCV',
608
+ // 'BITKUB': 'KUB',
609
+ // 'BITSHARES_OLD': 'BTS',
610
+ // 'BITSHARES': 'NBS',
611
+ // 'BYTZ': 'BYTZ',
612
+ // 'CANTO': 'CANTO', // CANTOEVM
586
613
  // 'CENNZ': 'CENNZ',
587
- // 'WAYKICHAIN': 'WICC',
588
- // 'EMERALD': 'EMERALD', // sits on top of OASIS
614
+ // 'CHAINX': 'PCX',
615
+ // 'CONCODRIUM': 'CCD',
589
616
  // 'CONTENTVALUENETWORK': 'CVNT',
590
- // 'ORIGYN': 'OGY',
591
- // 'KASPA': 'KASPA',
592
- // 'CANTO': 'CANTO', // CANTOEVM
617
+ // 'CORTEX': 'CTXC',
618
+ // 'CYPHERIUM': 'CPH',
619
+ // 'DANGNN': 'DGC',
593
620
  // 'DARWINIASMARTCHAIN': 'Darwinia Smart Chain',
594
- // 'KEKCHAIN': 'KEKCHAIN',
595
- // 'ZENITH': 'ZENITH',
621
+ // 'DHEALTH': 'DHP',
622
+ // 'DOGECOIN': [ 'DOGE', 'DOGECHAIN' ], // todo after unification
623
+ // 'DRAC': 'DRAC',
624
+ // 'DRAKEN': 'DRK',
596
625
  // 'ECOCHAIN': 'ECOC',
597
626
  // 'ELECTRAPROTOCOL': 'XEP',
598
- // 'KULUPU': 'KLP',
599
- // 'KINTSUGI': 'KINT',
600
- // 'PLEX': 'PLEX',
601
- // 'CONCODRIUM': 'CCD',
602
- // 'REBUS': 'REBUS', // REBUSEVM is different
603
- // 'BITKUB': 'KUB',
604
- // 'BITCOINVAULT': 'BTCV',
605
- // 'PROXIMAX': 'XPX',
606
- // 'PAC': 'PAC',
607
- // 'CHAINX': 'PCX',
608
- // 'DRAC': 'DRAC',
609
- // 'WHITECOIN': 'XWC',
610
- // 'TECHPAY': 'TPC',
611
- // 'GXCHAIN': 'GXC',
612
- // 'CYPHERIUM': 'CPH',
613
- // 'LBRY': 'LBC',
614
- // 'TONGTONG': 'TTC',
615
- // 'LEDGIS': 'LED',
616
- // 'PMG': 'PMG',
617
- // 'PROOFOFMEMES': 'POM',
618
- // 'SENTINEL': 'DVPN',
619
- // 'METER': 'MTRG',
620
- // 'YAS': 'YAS',
621
- // 'ULTRAIN': 'UGAS',
622
- // 'PASTEL': 'PSL',
623
- // 'KONSTELLATION': 'DARC',
624
- // 'ANDUSCHAIN': 'DEB',
627
+ // 'EMERALD': 'EMERALD', // sits on top of OASIS
628
+ // 'EVMOS': 'EVMOS', // EVMOSETH is different
629
+ // 'EXOSAMA': 'SAMA',
630
+ // 'FIBOS': 'FO',
631
+ // 'FILECASH': 'FIC',
625
632
  // 'FIRMACHAIN': 'FCT',
633
+ // 'FIRO': 'XZC',
634
+ // 'FNCY': 'FNCY',
635
+ // 'FRUITS': 'FRTS',
636
+ // 'GLEEC': 'GLEEC',
637
+ // 'GXCHAIN': 'GXC',
626
638
  // 'HANDSHAKE': 'HNS',
627
- // 'DANGNN': 'DGC',
628
- // 'SERO': 'SERO',
629
639
  // 'HPB': 'HPB',
630
- // 'XDAI': 'XDAI',
631
- // 'EXOSAMA': 'SAMA',
632
- // 'DHEALTH': 'DHP',
633
- // 'HUPAYX': 'HPX',
634
- // 'GLEEC': 'GLEEC',
635
- // 'FIBOS': 'FO',
636
- // 'MDNA': 'DNA',
637
640
  // 'HSHARE': 'HC',
638
- // 'BYTZ': 'BYTZ',
639
- // 'DRAKEN': 'DRK',
641
+ // 'HUAHUA': 'HUAHUA',
642
+ // 'HUPAYX': 'HPX',
643
+ // 'INDEXCHAIN': 'IDX',
644
+ // 'INTCHAIN': 'INT',
645
+ // 'INTEGRITEE': 'TEER',
646
+ // 'INTERLAY': 'INTR',
647
+ // 'IOEX': 'IOEX',
648
+ // 'JUNO': 'JUNO',
649
+ // 'KASPA': 'KASPA',
650
+ // 'KEKCHAIN': 'KEKCHAIN',
651
+ // 'KINTSUGI': 'KINT',
652
+ // 'KOINOS': 'KOINOS',
653
+ // 'KONSTELLATION': 'DARC',
654
+ // 'KUJIRA': 'KUJI',
655
+ // 'KULUPU': 'KLP',
656
+ // 'LBRY': 'LBC',
657
+ // 'LEDGIS': 'LED',
658
+ // 'LIGHTNINGBITCOIN': 'LBTC',
640
659
  // 'LINE': 'LINE',
660
+ // 'MDNA': 'DNA',
641
661
  // 'MDUKEY': 'MDU',
642
- // 'KOINOS': 'KOINOS',
662
+ // 'METAMUI': 'MMUI',
663
+ // 'METAVERSE_ETP': 'ETP',
664
+ // 'METER': 'MTRG',
643
665
  // 'MEVERSE': 'MEVerse',
666
+ // 'NEWTON': 'NEW',
667
+ // 'NODLE': 'NODLE',
668
+ // 'ORIGYN': 'OGY',
669
+ // 'PAC': 'PAC',
670
+ // 'PASTEL': 'PSL',
671
+ // 'PHALA': 'Khala',
672
+ // 'PLEX': 'PLEX',
673
+ // 'PMG': 'PMG',
644
674
  // 'POINT': 'POINT', // POINTEVM is different
645
- // 'INDEXCHAIN': 'IDX',
646
- // 'ULORD': 'UT',
647
- // 'INTEGRITEE': 'TEER',
648
- // 'XX': 'XX',
649
- // 'CORTEX': 'CTXC',
675
+ // 'PROOFOFMEMES': 'POM',
676
+ // 'PROXIMAX': 'XPX',
677
+ // 'RCHAIN': 'REV',
678
+ // 'REBUS': 'REBUS', // REBUSEVM is different
650
679
  // 'RIZON': 'ATOLO',
680
+ // 'SENTINEL': 'DVPN',
681
+ // 'SERO': 'SERO',
682
+ // 'TECHPAY': 'TPC',
683
+ // 'TELOSCOIN': 'TLOS', // todo
684
+ // 'TERRA': 'LUNA2',
685
+ // 'TERRACLASSIC': 'LUNC',
686
+ // 'TLOS': 'TELOS', // todo
687
+ // 'TOMAINFO': 'TON',
688
+ // 'TONGTONG': 'TTC',
689
+ // 'TURTLECOIN': 'TRTL',
690
+ // 'ULORD': 'UT',
691
+ // 'ULTRAIN': 'UGAS',
692
+ // 'UMEE': 'UMEE',
651
693
  // 'VDIMENSION': 'VOLLAR',
652
- // 'JUNO': 'JUNO',
653
694
  // 'VEXANIUM': 'VEX',
654
- // 'INTCHAIN': 'INT',
655
- // 'METAMUI': 'MMUI',
656
- // 'RCHAIN': 'REV',
657
- // 'EVMOS': 'EVMOS', // EVMOSETH is different
658
- // 'ZKSYNC': 'ZKSYNC',
659
- // 'BITSHARES_OLD': 'BTS',
660
- // 'BITSHARES': 'NBS',
661
- // 'UMEE': 'UMEE',
662
695
  // 'VNT': 'VNT',
663
- // 'TURTLECOIN': 'TRTL',
664
- // 'METAVERSE_ETP': 'ETP',
665
- // 'NEWTON': 'NEW',
666
- // // 'BAJUN': '',
667
- // 'INTERLAY': 'INTR',
668
- // 'LIGHTNINGBITCOIN': 'LBTC',
669
- // 'FIRO': 'XZC',
670
- // 'ALAYA': 'ATP',
671
- // 'AXE': 'AXE',
672
- // 'FNCY': 'FNCY',
696
+ // 'WAYKICHAIN': 'WICC',
697
+ // 'WHITECOIN': 'XWC',
673
698
  // 'WITNET': 'WIT',
674
- // 'FILECASH': 'FIC',
675
- // 'ASSETMANTLE': 'MNTL',
699
+ // 'XDAI': 'XDAI',
700
+ // 'XX': 'XX',
701
+ // 'YAS': 'YAS',
702
+ // 'ZENITH': 'ZENITH',
703
+ // 'ZKSYNC': 'ZKSYNC',
704
+ // // 'BAJUN': '',
676
705
  // OKB <> OKT (for usdt it's exception) for OKC, PMEER, FLARE, STRD, ZEL, FUND, "NONE", CRING, FREETON, QTZ (probably unique network is meant), HT, BSC(RACAV1), BSC(RACAV2), AMBROSUS, BAJUN, NOM. their individual info is at https://www.mexc.com/api/platform/asset/spot/{COINNAME}
677
706
  },
707
+ 'networksById': {
708
+ 'Aleph Zero(AZERO)': 'AZERO',
709
+ 'Alephium(ALPH)': 'ALPH',
710
+ 'Algorand(ALGO)': 'ALGO',
711
+ 'APTOS(APT)': 'APT',
712
+ 'Arbitrum One(ARB)': 'ARB',
713
+ 'Avalanche C Chain(AVAX CCHAIN)': 'AVAXC',
714
+ 'Avalanche X Chain(AVAX XCHAIN)': 'AVAXX',
715
+ 'BEP20(BSC)': 'BSC',
716
+ 'Bitcoin Cash(BCH)': 'BCH',
717
+ 'Bitcoin SV(BSV)': 'BSV',
718
+ 'Bitcoin(BTC)': 'BTC',
719
+ 'Bittensor(TAO)': 'TAO',
720
+ 'BNB Beacon Chain(BEP2)': 'BEP2',
721
+ 'BNB Smart Chain(BEP20-RACAV1)': 'BSC',
722
+ 'BNB Smart Chain(BEP20-RACAV2)': 'BSC',
723
+ 'BNB Smart Chain(BEP20)': 'BSC',
724
+ 'Cardano(ADA)': 'ADA',
725
+ 'Celestia(TIA)': 'TIA',
726
+ 'Chia(XCH)': 'XCH',
727
+ 'Chiliz Chain(CHZ2)': 'CHZ2',
728
+ 'Chiliz Legacy Chain(CHZ)': 'CHZ',
729
+ 'Clore.ai(CLORE)': 'CLORE',
730
+ 'Cosmos(ATOM)': 'ATOM',
731
+ 'Dogechain(DC)': 'DC',
732
+ 'Dogecoin(DOGE)': 'DOGE',
733
+ 'Dymension(DYM)': 'DYM',
734
+ 'Dynex(DNX)': 'DNX',
735
+ 'Elysium(LAVA)': 'LAVA',
736
+ 'Ethereum Classic(ETC)': 'ETC',
737
+ 'Ethereum(ERC20)': 'ERC20',
738
+ 'Fantom(FTM)': 'FTM',
739
+ 'Hedera(HBAR)': 'HBAR',
740
+ 'Index Chain': 'INDEX',
741
+ 'Internet Computer(ICP)': 'ICP',
742
+ 'Kaspa(KAS)': 'KAS',
743
+ 'Klaytn(KLAY)': 'KLAY',
744
+ 'Litecoin(LTC)': 'LTC',
745
+ 'Mantle(MNT)': 'MNT',
746
+ 'Mcoin Network': 'MCOIN',
747
+ 'Meter(MTRG)': 'MTRG',
748
+ 'Monero(XMR)': 'XMR',
749
+ 'NEAR Protocol(NEAR)': 'NEAR',
750
+ 'Neoxa Network': 'NEOXA',
751
+ 'Neurai(XNA)': 'XNA',
752
+ 'Omega Network(OMN)': 'OMN',
753
+ 'Optimism(OP)': 'OPTIMISM',
754
+ 'Polkadot(DOT)': 'DOT',
755
+ 'Polygon(MATIC)': 'MATIC',
756
+ 'RAP20 (Rangers Mainnet)': 'RAP20',
757
+ 'Ravencoin(RVN)': 'RVN',
758
+ 'Ripple(XRP)': 'XRP',
759
+ 'Satoxcoin(SATOX)': 'SATOX',
760
+ 'Solana(SOL)': 'SOL',
761
+ 'Starknet(STARK)': 'STARK',
762
+ 'Stellar(XLM)': 'XLM',
763
+ 'Terra(LUNA)': 'LUNA',
764
+ 'Toncoin(TON)': 'TON',
765
+ 'Tron(TRC20)': 'TRC20',
766
+ 'UGAS(Ultrain)': 'UGAS',
767
+ 'VeChain(VET)': 'VET',
768
+ 'Vexanium(VEX)': 'VEX',
769
+ 'XPR Network': 'XPR',
770
+ 'Zilliqa(ZIL)': 'ZIL',
771
+ // TODO: uncomment below after deciding unified name
772
+ // 'PEPE COIN BSC':
773
+ // 'SMART BLOCKCHAIN':
774
+ // 'f(x)Core':
775
+ // 'Syscoin Rollux':
776
+ // 'Syscoin UTXO':
777
+ // 'zkSync Era':
778
+ // 'zkSync Lite':
779
+ // 'Darwinia Smart Chain':
780
+ // 'Arbitrum One(ARB-Bridged)':
781
+ // 'Optimism(OP-Bridged)':
782
+ // 'Polygon(MATIC-Bridged)':
783
+ },
678
784
  'recvWindow': 5 * 1000,
679
785
  'maxTimeTillEnd': 90 * 86400 * 1000 - 1,
680
786
  'broker': 'CCXT',
@@ -954,7 +1060,7 @@ class mexc extends mexc$1 {
954
1060
  for (let j = 0; j < chains.length; j++) {
955
1061
  const chain = chains[j];
956
1062
  const networkId = this.safeString(chain, 'network');
957
- const network = this.safeNetwork(networkId);
1063
+ const network = this.networkIdToCode(networkId);
958
1064
  const isDepositEnabled = this.safeBool(chain, 'depositEnable', false);
959
1065
  const isWithdrawEnabled = this.safeBool(chain, 'withdrawEnable', false);
960
1066
  const active = (isDepositEnabled && isWithdrawEnabled);
@@ -1027,26 +1133,6 @@ class mexc extends mexc$1 {
1027
1133
  }
1028
1134
  return result;
1029
1135
  }
1030
- safeNetwork(networkId) {
1031
- if (networkId.indexOf('BSC') >= 0) {
1032
- return 'BEP20';
1033
- }
1034
- const parts = networkId.split(' ');
1035
- networkId = parts.join('');
1036
- networkId = networkId.replace('-20', '20');
1037
- const networksById = {
1038
- 'Ethereum(ERC20)': 'ERC20',
1039
- 'Algorand(ALGO)': 'ALGO',
1040
- 'ArbitrumOne(ARB)': 'ARBONE',
1041
- 'AvalancheCChain(AVAXCCHAIN)': 'AVAXC',
1042
- 'BNB Smart Chain(BEP20)': 'BEP20',
1043
- 'Polygon(MATIC)': 'MATIC',
1044
- 'Optimism(OP)': 'OPTIMISM',
1045
- 'Solana(SOL)': 'SOL',
1046
- 'Tron(TRC20)': 'TRC20',
1047
- };
1048
- return this.safeString(networksById, networkId, networkId);
1049
- }
1050
1136
  async fetchMarkets(params = {}) {
1051
1137
  /**
1052
1138
  * @method
@@ -4290,23 +4376,22 @@ class mexc extends mexc$1 {
4290
4376
  }
4291
4377
  parseDepositAddress(depositAddress, currency = undefined) {
4292
4378
  //
4293
- // {"chain":"ERC-20","address":"0x55cbd73db24eafcca97369e3f2db74b2490586e6"},
4294
- // {"chain":"MATIC","address":"0x05aa3236f1970eae0f8feb17ec19435b39574d74"},
4295
- // {"chain":"TRC20","address":"TGaPfhW41EXD3sAfs1grLF6DKfugfqANNw"},
4296
- // {"chain":"SOL","address":"5FSpUKuh2gjw4mF89T2e7sEjzUA1SkRKjBChFqP43KhV"},
4297
- // {"chain":"ALGO","address":"B3XTZND2JJTSYR7R2TQVCUDT4QSSYVAIZYDPWVBX34DGAYATBU3AUV43VU"}
4298
- //
4379
+ // {
4380
+ // coin: "USDT",
4381
+ // network: "BNB Smart Chain(BEP20)",
4382
+ // address: "0x0d48003e0c27c5de62b97c9b4cdb31fdd29da619",
4383
+ // memo: null
4384
+ // }
4299
4385
  //
4300
4386
  const address = this.safeString(depositAddress, 'address');
4301
- const code = this.safeCurrencyCode(undefined, currency);
4302
- const networkId = this.safeString(depositAddress, 'chain');
4303
- const network = this.safeNetwork(networkId);
4387
+ const currencyId = this.safeString(depositAddress, 'coin');
4388
+ const networkId = this.safeString(depositAddress, 'network');
4304
4389
  this.checkAddress(address);
4305
4390
  return {
4306
- 'currency': code,
4391
+ 'currency': this.safeCurrencyCode(currencyId, currency),
4307
4392
  'address': address,
4308
- 'tag': undefined,
4309
- 'network': network,
4393
+ 'tag': this.safeString(depositAddress, 'memo'),
4394
+ 'network': this.networkIdToCode(networkId),
4310
4395
  'info': depositAddress,
4311
4396
  };
4312
4397
  }
@@ -4335,23 +4420,19 @@ class mexc extends mexc$1 {
4335
4420
  }
4336
4421
  params = this.omit(params, 'network');
4337
4422
  const response = await this.spotPrivateGetCapitalDepositAddress(this.extend(request, params));
4338
- const result = [];
4339
- for (let i = 0; i < response.length; i++) {
4340
- const depositAddress = response[i];
4341
- const coin = this.safeString(depositAddress, 'coin');
4342
- const currencyInner = this.currency(coin);
4343
- const networkIdInner = this.safeString(depositAddress, 'network');
4344
- const network = this.safeNetwork(networkIdInner);
4345
- const address = this.safeString(depositAddress, 'address', undefined);
4346
- const tag = this.safeString2(depositAddress, 'tag', 'memo', undefined);
4347
- result.push({
4348
- 'currency': currencyInner['id'],
4349
- 'network': network,
4350
- 'address': address,
4351
- 'tag': tag,
4352
- });
4353
- }
4354
- return result;
4423
+ //
4424
+ // [
4425
+ // {
4426
+ // coin: "USDT",
4427
+ // network: "BNB Smart Chain(BEP20)",
4428
+ // address: "0x0d48003e0c27c5de62b97c9b4cdb31fdd29da619",
4429
+ // memo: null
4430
+ // }
4431
+ // ...
4432
+ // ]
4433
+ //
4434
+ const addressStructures = this.parseDepositAddresses(response, undefined, false);
4435
+ return this.indexBy(addressStructures, 'network');
4355
4436
  }
4356
4437
  async createDepositAddress(code, params = {}) {
4357
4438
  /**
@@ -4385,13 +4466,7 @@ class mexc extends mexc$1 {
4385
4466
  // "address": "zzqqqqqqqqqq",
4386
4467
  // "memo": "MX10068"
4387
4468
  // }
4388
- return {
4389
- 'info': response,
4390
- 'currency': this.safeString(response, 'coin'),
4391
- 'network': this.safeString(response, 'network'),
4392
- 'address': this.safeString(response, 'address'),
4393
- 'tag': this.safeString(response, 'memo'),
4394
- };
4469
+ return this.parseDepositAddress(response, currency);
4395
4470
  }
4396
4471
  async fetchDepositAddress(code, params = {}) {
4397
4472
  /**
@@ -4401,23 +4476,30 @@ class mexc extends mexc$1 {
4401
4476
  * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#deposit-address-supporting-network
4402
4477
  * @param {string} code unified currency code
4403
4478
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4479
+ * @param {string} [params.network] the chain of currency, this only apply for multi-chain currency, and there is no need for single chain currency
4404
4480
  * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
4405
4481
  */
4406
- const rawNetwork = this.safeStringUpper(params, 'network');
4407
- params = this.omit(params, 'network');
4408
- const response = await this.fetchDepositAddressesByNetwork(code, params);
4409
- if (rawNetwork !== undefined) {
4410
- for (let i = 0; i < response.length; i++) {
4411
- const depositAddress = response[i];
4412
- const network = this.safeStringUpper(depositAddress, 'network');
4413
- if (rawNetwork === network) {
4414
- return depositAddress;
4415
- }
4482
+ const network = this.safeString(params, 'network');
4483
+ params = this.omit(params, ['network']);
4484
+ const addressStructures = await this.fetchDepositAddressesByNetwork(code, params);
4485
+ let result = undefined;
4486
+ if (network !== undefined) {
4487
+ result = this.safeDict(addressStructures, this.networkIdToCode(network, code));
4488
+ }
4489
+ else {
4490
+ const options = this.safeDict(this.options, 'defaultNetworks');
4491
+ const defaultNetworkForCurrency = this.safeString(options, code);
4492
+ if (defaultNetworkForCurrency !== undefined) {
4493
+ result = this.safeDict(addressStructures, defaultNetworkForCurrency);
4494
+ }
4495
+ else {
4496
+ const keys = Object.keys(addressStructures);
4497
+ const key = this.safeString(keys, 0);
4498
+ result = this.safeDict(addressStructures, key);
4416
4499
  }
4417
4500
  }
4418
- const result = this.safeValue(response, 0);
4419
4501
  if (result === undefined) {
4420
- throw new errors.InvalidAddress(this.id + ' fetchDepositAddress() cannot find a deposit address for ' + code + ', consider creating one using the MEXC platform');
4502
+ throw new errors.InvalidAddress(this.id + ' fetchDepositAddress() cannot find a deposit address for ' + code + ', and network' + network + 'consider creating one using the MEXC platform');
4421
4503
  }
4422
4504
  return result;
4423
4505
  }
@@ -4589,7 +4671,7 @@ class mexc extends mexc$1 {
4589
4671
  let network = undefined;
4590
4672
  const rawNetwork = this.safeString(transaction, 'network');
4591
4673
  if (rawNetwork !== undefined) {
4592
- network = this.safeNetwork(rawNetwork);
4674
+ network = this.networkIdToCode(rawNetwork);
4593
4675
  }
4594
4676
  const code = this.safeCurrencyCode(currencyId, currency);
4595
4677
  const status = this.parseTransactionStatusByType(this.safeString(transaction, 'status'), type);