ccxt 4.2.84 → 4.2.85

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.
Files changed (164) hide show
  1. package/README.md +3 -3
  2. package/build.sh +1 -1
  3. package/dist/ccxt.browser.js +867 -904
  4. package/dist/ccxt.browser.min.js +4 -4
  5. package/dist/cjs/ccxt.js +1 -1
  6. package/dist/cjs/src/ace.js +5 -5
  7. package/dist/cjs/src/ascendex.js +8 -8
  8. package/dist/cjs/src/base/Exchange.js +76 -14
  9. package/dist/cjs/src/bigone.js +12 -12
  10. package/dist/cjs/src/binance.js +23 -35
  11. package/dist/cjs/src/bingx.js +13 -9
  12. package/dist/cjs/src/bit2c.js +1 -1
  13. package/dist/cjs/src/bitbank.js +8 -8
  14. package/dist/cjs/src/bitbns.js +5 -5
  15. package/dist/cjs/src/bitfinex.js +1 -1
  16. package/dist/cjs/src/bitfinex2.js +1 -1
  17. package/dist/cjs/src/bitget.js +30 -24
  18. package/dist/cjs/src/bithumb.js +5 -5
  19. package/dist/cjs/src/bitmart.js +16 -16
  20. package/dist/cjs/src/bitopro.js +1 -1
  21. package/dist/cjs/src/bitrue.js +4 -4
  22. package/dist/cjs/src/bitso.js +5 -5
  23. package/dist/cjs/src/bitstamp.js +1 -1
  24. package/dist/cjs/src/bitteam.js +8 -8
  25. package/dist/cjs/src/bl3p.js +1 -1
  26. package/dist/cjs/src/btcturk.js +6 -6
  27. package/dist/cjs/src/bybit.js +31 -95
  28. package/dist/cjs/src/coincheck.js +4 -4
  29. package/dist/cjs/src/coinex.js +11 -11
  30. package/dist/cjs/src/coinlist.js +7 -7
  31. package/dist/cjs/src/coinmate.js +4 -4
  32. package/dist/cjs/src/coinmetro.js +3 -3
  33. package/dist/cjs/src/coinone.js +5 -5
  34. package/dist/cjs/src/coinspot.js +2 -2
  35. package/dist/cjs/src/cryptocom.js +17 -17
  36. package/dist/cjs/src/currencycom.js +1 -1
  37. package/dist/cjs/src/delta.js +0 -8
  38. package/dist/cjs/src/deribit.js +16 -92
  39. package/dist/cjs/src/digifinex.js +8 -8
  40. package/dist/cjs/src/exmo.js +8 -8
  41. package/dist/cjs/src/gate.js +0 -8
  42. package/dist/cjs/src/hitbtc.js +5 -4
  43. package/dist/cjs/src/hollaex.js +7 -7
  44. package/dist/cjs/src/htx.js +7 -7
  45. package/dist/cjs/src/huobijp.js +3 -3
  46. package/dist/cjs/src/idex.js +2 -2
  47. package/dist/cjs/src/independentreserve.js +2 -2
  48. package/dist/cjs/src/indodax.js +2 -2
  49. package/dist/cjs/src/kraken.js +8 -8
  50. package/dist/cjs/src/krakenfutures.js +6 -6
  51. package/dist/cjs/src/kucoin.js +5 -1
  52. package/dist/cjs/src/kucoinfutures.js +8 -8
  53. package/dist/cjs/src/kuna.js +16 -16
  54. package/dist/cjs/src/latoken.js +2 -2
  55. package/dist/cjs/src/lbank.js +10 -10
  56. package/dist/cjs/src/luno.js +4 -4
  57. package/dist/cjs/src/mercado.js +5 -5
  58. package/dist/cjs/src/mexc.js +6 -6
  59. package/dist/cjs/src/ndax.js +1 -1
  60. package/dist/cjs/src/novadax.js +9 -9
  61. package/dist/cjs/src/oceanex.js +7 -7
  62. package/dist/cjs/src/okcoin.js +13 -13
  63. package/dist/cjs/src/okx.js +23 -31
  64. package/dist/cjs/src/onetrading.js +4 -4
  65. package/dist/cjs/src/p2b.js +7 -7
  66. package/dist/cjs/src/phemex.js +12 -12
  67. package/dist/cjs/src/poloniexfutures.js +5 -5
  68. package/dist/cjs/src/pro/binance.js +167 -121
  69. package/dist/cjs/src/pro/kucoin.js +6 -7
  70. package/dist/cjs/src/pro/okx.js +19 -2
  71. package/dist/cjs/src/probit.js +11 -11
  72. package/dist/cjs/src/timex.js +7 -7
  73. package/dist/cjs/src/tokocrypto.js +9 -9
  74. package/dist/cjs/src/wavesexchange.js +3 -3
  75. package/dist/cjs/src/whitebit.js +5 -5
  76. package/dist/cjs/src/woo.js +1 -1
  77. package/dist/cjs/src/zaif.js +1 -1
  78. package/dist/cjs/src/zonda.js +7 -7
  79. package/examples/js/cli.js +0 -1
  80. package/examples/ts/cli.ts +0 -1
  81. package/js/ccxt.d.ts +1 -1
  82. package/js/ccxt.js +1 -1
  83. package/js/src/ace.js +5 -5
  84. package/js/src/ascendex.js +8 -8
  85. package/js/src/base/Exchange.d.ts +4 -3
  86. package/js/src/base/Exchange.js +76 -14
  87. package/js/src/bigone.js +12 -12
  88. package/js/src/binance.d.ts +0 -1
  89. package/js/src/binance.js +23 -35
  90. package/js/src/bingx.js +13 -9
  91. package/js/src/bit2c.js +1 -1
  92. package/js/src/bitbank.js +8 -8
  93. package/js/src/bitbns.js +5 -5
  94. package/js/src/bitfinex.js +1 -1
  95. package/js/src/bitfinex2.js +1 -1
  96. package/js/src/bitget.js +30 -24
  97. package/js/src/bithumb.js +5 -5
  98. package/js/src/bitmart.js +16 -16
  99. package/js/src/bitopro.js +1 -1
  100. package/js/src/bitrue.js +4 -4
  101. package/js/src/bitso.js +5 -5
  102. package/js/src/bitstamp.js +1 -1
  103. package/js/src/bitteam.js +8 -8
  104. package/js/src/bl3p.js +1 -1
  105. package/js/src/btcturk.js +6 -6
  106. package/js/src/bybit.d.ts +0 -3
  107. package/js/src/bybit.js +31 -95
  108. package/js/src/coincheck.js +4 -4
  109. package/js/src/coinex.js +11 -11
  110. package/js/src/coinlist.js +7 -7
  111. package/js/src/coinmate.js +4 -4
  112. package/js/src/coinmetro.js +3 -3
  113. package/js/src/coinone.js +5 -5
  114. package/js/src/coinspot.js +2 -2
  115. package/js/src/cryptocom.js +17 -17
  116. package/js/src/currencycom.js +1 -1
  117. package/js/src/delta.d.ts +0 -1
  118. package/js/src/delta.js +0 -8
  119. package/js/src/deribit.d.ts +0 -3
  120. package/js/src/deribit.js +16 -92
  121. package/js/src/digifinex.js +8 -8
  122. package/js/src/exmo.js +8 -8
  123. package/js/src/gate.d.ts +0 -1
  124. package/js/src/gate.js +0 -8
  125. package/js/src/hitbtc.js +5 -4
  126. package/js/src/hollaex.js +7 -7
  127. package/js/src/htx.js +7 -7
  128. package/js/src/huobijp.js +3 -3
  129. package/js/src/idex.js +2 -2
  130. package/js/src/independentreserve.js +2 -2
  131. package/js/src/indodax.js +2 -2
  132. package/js/src/kraken.js +8 -8
  133. package/js/src/krakenfutures.js +6 -6
  134. package/js/src/kucoin.js +5 -1
  135. package/js/src/kucoinfutures.js +8 -8
  136. package/js/src/kuna.js +16 -16
  137. package/js/src/latoken.js +2 -2
  138. package/js/src/lbank.js +10 -10
  139. package/js/src/luno.js +4 -4
  140. package/js/src/mercado.js +5 -5
  141. package/js/src/mexc.js +6 -6
  142. package/js/src/ndax.js +1 -1
  143. package/js/src/novadax.js +9 -9
  144. package/js/src/oceanex.js +7 -7
  145. package/js/src/okcoin.js +13 -13
  146. package/js/src/okx.d.ts +0 -1
  147. package/js/src/okx.js +23 -31
  148. package/js/src/onetrading.js +4 -4
  149. package/js/src/p2b.js +7 -7
  150. package/js/src/phemex.js +12 -12
  151. package/js/src/poloniexfutures.js +5 -5
  152. package/js/src/pro/binance.d.ts +5 -1
  153. package/js/src/pro/binance.js +168 -122
  154. package/js/src/pro/kucoin.js +6 -7
  155. package/js/src/pro/okx.js +19 -2
  156. package/js/src/probit.js +11 -11
  157. package/js/src/timex.js +7 -7
  158. package/js/src/tokocrypto.js +9 -9
  159. package/js/src/wavesexchange.js +3 -3
  160. package/js/src/whitebit.js +5 -5
  161. package/js/src/woo.js +1 -1
  162. package/js/src/zaif.js +1 -1
  163. package/js/src/zonda.js +7 -7
  164. package/package.json +1 -1
@@ -450,7 +450,7 @@ class bitfinex extends bitfinex$1 {
450
450
  // }
451
451
  // }
452
452
  //
453
- const withdraw = this.safeValue(response, 'withdraw');
453
+ const withdraw = this.safeList(response, 'withdraw');
454
454
  return this.parseDepositWithdrawFees(withdraw, codes);
455
455
  }
456
456
  parseDepositWithdrawFee(fee, currency = undefined) {
@@ -1782,7 +1782,7 @@ class bitfinex2 extends bitfinex2$1 {
1782
1782
  'all': 1,
1783
1783
  };
1784
1784
  const response = await this.privatePostAuthWOrderCancelMulti(this.extend(request, params));
1785
- const orders = this.safeValue(response, 4, []);
1785
+ const orders = this.safeList(response, 4, []);
1786
1786
  return this.parseOrders(orders);
1787
1787
  }
1788
1788
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -2191,7 +2191,7 @@ class bitget extends bitget$1 {
2191
2191
  // ]
2192
2192
  // }
2193
2193
  //
2194
- const rawTransactions = this.safeValue(response, 'data', []);
2194
+ const rawTransactions = this.safeList(response, 'data', []);
2195
2195
  return this.parseTransactions(rawTransactions, currency, since, limit);
2196
2196
  }
2197
2197
  async withdraw(code, amount, address, tag = undefined, params = {}) {
@@ -2339,7 +2339,7 @@ class bitget extends bitget$1 {
2339
2339
  // ]
2340
2340
  // }
2341
2341
  //
2342
- const rawTransactions = this.safeValue(response, 'data', []);
2342
+ const rawTransactions = this.safeList(response, 'data', []);
2343
2343
  return this.parseTransactions(rawTransactions, currency, since, limit);
2344
2344
  }
2345
2345
  parseTransaction(transaction, currency = undefined) {
@@ -2467,7 +2467,7 @@ class bitget extends bitget$1 {
2467
2467
  // }
2468
2468
  // }
2469
2469
  //
2470
- const data = this.safeValue(response, 'data', {});
2470
+ const data = this.safeDict(response, 'data', {});
2471
2471
  return this.parseDepositAddress(data, currency);
2472
2472
  }
2473
2473
  parseDepositAddress(depositAddress, currency = undefined) {
@@ -2756,7 +2756,7 @@ class bitget extends bitget$1 {
2756
2756
  // ]
2757
2757
  // }
2758
2758
  //
2759
- const data = this.safeValue(response, 'data', []);
2759
+ const data = this.safeList(response, 'data', []);
2760
2760
  return this.parseTicker(data[0], market);
2761
2761
  }
2762
2762
  async fetchTickers(symbols = undefined, params = {}) {
@@ -2860,7 +2860,7 @@ class bitget extends bitget$1 {
2860
2860
  // ]
2861
2861
  // }
2862
2862
  //
2863
- const data = this.safeValue(response, 'data', []);
2863
+ const data = this.safeList(response, 'data', []);
2864
2864
  return this.parseTickers(data, symbols);
2865
2865
  }
2866
2866
  parseTrade(trade, market = undefined) {
@@ -3100,7 +3100,7 @@ class bitget extends bitget$1 {
3100
3100
  // ]
3101
3101
  // }
3102
3102
  //
3103
- const data = this.safeValue(response, 'data', []);
3103
+ const data = this.safeList(response, 'data', []);
3104
3104
  return this.parseTrades(data, market, since, limit);
3105
3105
  }
3106
3106
  async fetchTradingFee(symbol, params = {}) {
@@ -4187,7 +4187,7 @@ class bitget extends bitget$1 {
4187
4187
  // }
4188
4188
  // }
4189
4189
  //
4190
- const data = this.safeValue(response, 'data', {});
4190
+ const data = this.safeDict(response, 'data', {});
4191
4191
  return this.parseOrder(data, market);
4192
4192
  }
4193
4193
  createOrderRequest(symbol, type, side, amount, price = undefined, params = {}) {
@@ -4698,7 +4698,7 @@ class bitget extends bitget$1 {
4698
4698
  // }
4699
4699
  // }
4700
4700
  //
4701
- const data = this.safeValue(response, 'data', {});
4701
+ const data = this.safeDict(response, 'data', {});
4702
4702
  return this.parseOrder(data, market);
4703
4703
  }
4704
4704
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -4937,7 +4937,7 @@ class bitget extends bitget$1 {
4937
4937
  // }
4938
4938
  //
4939
4939
  const data = this.safeValue(response, 'data', {});
4940
- const orders = this.safeValue(data, 'successList', []);
4940
+ const orders = this.safeList(data, 'successList', []);
4941
4941
  return this.parseOrders(orders, market);
4942
4942
  }
4943
4943
  async cancelAllOrders(symbol = undefined, params = {}) {
@@ -5168,9 +5168,15 @@ class bitget extends bitget$1 {
5168
5168
  if (typeof response === 'string') {
5169
5169
  response = JSON.parse(response);
5170
5170
  }
5171
- const data = this.safeValue(response, 'data');
5172
- const first = this.safeValue(data, 0, data);
5171
+ const data = this.safeDict(response, 'data');
5172
+ if ((data !== undefined) && !Array.isArray(data)) {
5173
+ return this.parseOrder(data, market);
5174
+ }
5175
+ const dataList = this.safeList(response, 'data', []);
5176
+ const first = this.safeDict(dataList, 0, {});
5173
5177
  return this.parseOrder(first, market);
5178
+ // const first = this.safeDict (data, 0, data);
5179
+ // return this.parseOrder (first, market);
5174
5180
  }
5175
5181
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
5176
5182
  /**
@@ -5473,12 +5479,12 @@ class bitget extends bitget$1 {
5473
5479
  const data = this.safeValue(response, 'data');
5474
5480
  if (type === 'spot') {
5475
5481
  if ((marginMode !== undefined) || stop) {
5476
- const resultList = this.safeValue(data, 'orderList', []);
5482
+ const resultList = this.safeList(data, 'orderList', []);
5477
5483
  return this.parseOrders(resultList, market, since, limit);
5478
5484
  }
5479
5485
  }
5480
5486
  else {
5481
- const result = this.safeValue(data, 'entrustedList', []);
5487
+ const result = this.safeList(data, 'entrustedList', []);
5482
5488
  return this.parseOrders(result, market, since, limit);
5483
5489
  }
5484
5490
  return this.parseOrders(data, market, since, limit);
@@ -5845,7 +5851,7 @@ class bitget extends bitget$1 {
5845
5851
  if (typeof response === 'string') {
5846
5852
  response = JSON.parse(response);
5847
5853
  }
5848
- const orders = this.safeValue(response, 'data', []);
5854
+ const orders = this.safeList(response, 'data', []);
5849
5855
  return this.parseOrders(orders, market, since, limit);
5850
5856
  }
5851
5857
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -6249,11 +6255,11 @@ class bitget extends bitget$1 {
6249
6255
  //
6250
6256
  const data = this.safeValue(response, 'data');
6251
6257
  if ((market['swap']) || (market['future'])) {
6252
- const fillList = this.safeValue(data, 'fillList', []);
6258
+ const fillList = this.safeList(data, 'fillList', []);
6253
6259
  return this.parseTrades(fillList, market, since, limit);
6254
6260
  }
6255
6261
  else if (marginMode !== undefined) {
6256
- const fills = this.safeValue(data, 'fills', []);
6262
+ const fills = this.safeList(data, 'fills', []);
6257
6263
  return this.parseTrades(fills, market, since, limit);
6258
6264
  }
6259
6265
  return this.parseTrades(data, market, since, limit);
@@ -6316,8 +6322,8 @@ class bitget extends bitget$1 {
6316
6322
  // ]
6317
6323
  // }
6318
6324
  //
6319
- const data = this.safeValue(response, 'data', []);
6320
- const first = this.safeValue(data, 0, {});
6325
+ const data = this.safeList(response, 'data', []);
6326
+ const first = this.safeDict(data, 0, {});
6321
6327
  return this.parsePosition(first, market);
6322
6328
  }
6323
6329
  async fetchPositions(symbols = undefined, params = {}) {
@@ -7268,7 +7274,7 @@ class bitget extends bitget$1 {
7268
7274
  // }
7269
7275
  // }
7270
7276
  //
7271
- const data = this.safeValue(response, 'data', {});
7277
+ const data = this.safeDict(response, 'data', {});
7272
7278
  return this.parseOpenInterest(data, market);
7273
7279
  }
7274
7280
  parseOpenInterest(interest, market = undefined) {
@@ -7352,7 +7358,7 @@ class bitget extends bitget$1 {
7352
7358
  // ]
7353
7359
  // }
7354
7360
  //
7355
- const data = this.safeValue(response, 'data', []);
7361
+ const data = this.safeList(response, 'data', []);
7356
7362
  return this.parseTransfers(data, currency, since, limit);
7357
7363
  }
7358
7364
  async transfer(code, amount, fromAccount, toAccount, params = {}) {
@@ -7549,7 +7555,7 @@ class bitget extends bitget$1 {
7549
7555
  // "requestTime": "1700120731773"
7550
7556
  // }
7551
7557
  //
7552
- const data = this.safeValue(response, 'data', []);
7558
+ const data = this.safeList(response, 'data', []);
7553
7559
  return this.parseDepositWithdrawFees(data, codes, 'coin');
7554
7560
  }
7555
7561
  async borrowCrossMargin(code, amount, params = {}) {
@@ -7856,7 +7862,7 @@ class bitget extends bitget$1 {
7856
7862
  // }
7857
7863
  //
7858
7864
  const data = this.safeValue(response, 'data', {});
7859
- const liquidations = this.safeValue(data, 'resultList', []);
7865
+ const liquidations = this.safeList(data, 'resultList', []);
7860
7866
  return this.parseLiquidations(liquidations, market, since, limit);
7861
7867
  }
7862
7868
  parseLiquidation(liquidation, market = undefined) {
@@ -8304,7 +8310,7 @@ class bitget extends bitget$1 {
8304
8310
  // }
8305
8311
  //
8306
8312
  const data = this.safeValue(response, 'data', {});
8307
- const order = this.safeValue(data, 'successList', []);
8313
+ const order = this.safeList(data, 'successList', []);
8308
8314
  return this.parseOrder(order[0], market);
8309
8315
  }
8310
8316
  async closeAllPositions(params = {}) {
@@ -8342,7 +8348,7 @@ class bitget extends bitget$1 {
8342
8348
  // }
8343
8349
  //
8344
8350
  const data = this.safeValue(response, 'data', {});
8345
- const orderInfo = this.safeValue(data, 'successList', []);
8351
+ const orderInfo = this.safeList(data, 'successList', []);
8346
8352
  return this.parsePositions(orderInfo, undefined, params);
8347
8353
  }
8348
8354
  async fetchMarginMode(symbol, params = {}) {
@@ -495,7 +495,7 @@ class bithumb extends bithumb$1 {
495
495
  // }
496
496
  // }
497
497
  //
498
- const data = this.safeValue(response, 'data', {});
498
+ const data = this.safeDict(response, 'data', {});
499
499
  return this.parseTicker(data, market);
500
500
  }
501
501
  parseOHLCV(ohlcv, market = undefined) {
@@ -562,7 +562,7 @@ class bithumb extends bithumb$1 {
562
562
  // }
563
563
  // }
564
564
  //
565
- const data = this.safeValue(response, 'data', []);
565
+ const data = this.safeList(response, 'data', []);
566
566
  return this.parseOHLCVs(data, market, timeframe, since, limit);
567
567
  }
568
568
  parseTrade(trade, market = undefined) {
@@ -679,7 +679,7 @@ class bithumb extends bithumb$1 {
679
679
  // ]
680
680
  // }
681
681
  //
682
- const data = this.safeValue(response, 'data', []);
682
+ const data = this.safeList(response, 'data', []);
683
683
  return this.parseTrades(data, market, since, limit);
684
684
  }
685
685
  async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
@@ -775,7 +775,7 @@ class bithumb extends bithumb$1 {
775
775
  // }
776
776
  // }
777
777
  //
778
- const data = this.safeValue(response, 'data');
778
+ const data = this.safeDict(response, 'data');
779
779
  return this.parseOrder(this.extend(data, { 'order_id': id }), market);
780
780
  }
781
781
  parseOrderStatus(status) {
@@ -931,7 +931,7 @@ class bithumb extends bithumb$1 {
931
931
  // ]
932
932
  // }
933
933
  //
934
- const data = this.safeValue(response, 'data', []);
934
+ const data = this.safeList(response, 'data', []);
935
935
  return this.parseOrders(data, market, since, limit);
936
936
  }
937
937
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -1317,7 +1317,7 @@ class bitmart extends bitmart$1 {
1317
1317
  else if (market['swap']) {
1318
1318
  tickersById = this.indexBy(tickers, 'contract_symbol');
1319
1319
  }
1320
- const ticker = this.safeValue(tickersById, market['id']);
1320
+ const ticker = this.safeDict(tickersById, market['id']);
1321
1321
  return this.parseTicker(ticker, market);
1322
1322
  }
1323
1323
  async fetchTickers(symbols = undefined, params = {}) {
@@ -1584,7 +1584,7 @@ class bitmart extends bitmart$1 {
1584
1584
  // }
1585
1585
  //
1586
1586
  const data = this.safeValue(response, 'data', {});
1587
- const trades = this.safeValue(data, 'trades', []);
1587
+ const trades = this.safeList(data, 'trades', []);
1588
1588
  return this.parseTrades(trades, market, since, limit);
1589
1589
  }
1590
1590
  parseOHLCV(ohlcv, market = undefined) {
@@ -1754,7 +1754,7 @@ class bitmart extends bitmart$1 {
1754
1754
  // "trace": "96c989db-e0f5-46f5-bba6-60cfcbde699b"
1755
1755
  // }
1756
1756
  //
1757
- const ohlcv = this.safeValue(response, 'data', []);
1757
+ const ohlcv = this.safeList(response, 'data', []);
1758
1758
  return this.parseOHLCVs(ohlcv, market, timeframe, since, limit);
1759
1759
  }
1760
1760
  async fetchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1870,7 +1870,7 @@ class bitmart extends bitmart$1 {
1870
1870
  // "trace": "4cad855074634097ac6ba5257c47305d.62.16959616054873723"
1871
1871
  // }
1872
1872
  //
1873
- const data = this.safeValue(response, 'data', []);
1873
+ const data = this.safeList(response, 'data', []);
1874
1874
  return this.parseTrades(data, market, since, limit);
1875
1875
  }
1876
1876
  async fetchOrderTrades(id, symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1891,7 +1891,7 @@ class bitmart extends bitmart$1 {
1891
1891
  'orderId': id,
1892
1892
  };
1893
1893
  const response = await this.privatePostSpotV4QueryOrderTrades(this.extend(request, params));
1894
- const data = this.safeValue(response, 'data', {});
1894
+ const data = this.safeList(response, 'data', []);
1895
1895
  return this.parseTrades(data, undefined, since, limit);
1896
1896
  }
1897
1897
  customParseBalance(response, marketType) {
@@ -2777,7 +2777,7 @@ class bitmart extends bitmart$1 {
2777
2777
  // }
2778
2778
  //
2779
2779
  const data = this.safeValue(response, 'data', {});
2780
- const orders = this.safeValue(data, 'orders', []);
2780
+ const orders = this.safeList(data, 'orders', []);
2781
2781
  return this.parseOrders(orders, market, since, limit);
2782
2782
  }
2783
2783
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2906,7 +2906,7 @@ class bitmart extends bitmart$1 {
2906
2906
  // "trace": "7f9d94g10f9d4513bc08a7rfc3a5559a.71.16957022303515933"
2907
2907
  // }
2908
2908
  //
2909
- const data = this.safeValue(response, 'data', []);
2909
+ const data = this.safeList(response, 'data', []);
2910
2910
  return this.parseOrders(data, market, since, limit);
2911
2911
  }
2912
2912
  async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2960,7 +2960,7 @@ class bitmart extends bitmart$1 {
2960
2960
  else {
2961
2961
  response = await this.privateGetContractPrivateOrderHistory(this.extend(request, params));
2962
2962
  }
2963
- const data = this.safeValue(response, 'data', []);
2963
+ const data = this.safeList(response, 'data', []);
2964
2964
  return this.parseOrders(data, market, since, limit);
2965
2965
  }
2966
2966
  async fetchCanceledOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -3080,7 +3080,7 @@ class bitmart extends bitmart$1 {
3080
3080
  // "trace": "4cad855075664097af6ba5257c47605d.63.14957831547451715"
3081
3081
  // }
3082
3082
  //
3083
- const data = this.safeValue(response, 'data', {});
3083
+ const data = this.safeDict(response, 'data', {});
3084
3084
  return this.parseOrder(data, market);
3085
3085
  }
3086
3086
  async fetchDepositAddress(code, params = {}) {
@@ -3123,7 +3123,7 @@ class bitmart extends bitmart$1 {
3123
3123
  // }
3124
3124
  // }
3125
3125
  //
3126
- const data = this.safeValue(response, 'data', {});
3126
+ const data = this.safeDict(response, 'data', {});
3127
3127
  return this.parseDepositAddress(data, currency);
3128
3128
  }
3129
3129
  parseDepositAddress(depositAddress, currency = undefined) {
@@ -3271,7 +3271,7 @@ class bitmart extends bitmart$1 {
3271
3271
  // }
3272
3272
  //
3273
3273
  const data = this.safeValue(response, 'data', {});
3274
- const records = this.safeValue(data, 'records', []);
3274
+ const records = this.safeList(data, 'records', []);
3275
3275
  return this.parseTransactions(records, currency, since, limit);
3276
3276
  }
3277
3277
  async fetchDeposit(id, code = undefined, params = {}) {
@@ -3312,7 +3312,7 @@ class bitmart extends bitmart$1 {
3312
3312
  // }
3313
3313
  //
3314
3314
  const data = this.safeValue(response, 'data', {});
3315
- const record = this.safeValue(data, 'record', {});
3315
+ const record = this.safeDict(data, 'record', {});
3316
3316
  return this.parseTransaction(record);
3317
3317
  }
3318
3318
  async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -3366,7 +3366,7 @@ class bitmart extends bitmart$1 {
3366
3366
  // }
3367
3367
  //
3368
3368
  const data = this.safeValue(response, 'data', {});
3369
- const record = this.safeValue(data, 'record', {});
3369
+ const record = this.safeDict(data, 'record', {});
3370
3370
  return this.parseTransaction(record);
3371
3371
  }
3372
3372
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -3916,7 +3916,7 @@ class bitmart extends bitmart$1 {
3916
3916
  // }
3917
3917
  //
3918
3918
  const data = this.safeValue(response, 'data', {});
3919
- const records = this.safeValue(data, 'records', []);
3919
+ const records = this.safeList(data, 'records', []);
3920
3920
  return this.parseTransfers(records, currency, since, limit);
3921
3921
  }
3922
3922
  async fetchBorrowInterest(code = undefined, symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -4033,7 +4033,7 @@ class bitmart extends bitmart$1 {
4033
4033
  // "trace": "7f9c94e10f9d4513bc08a7bfc2a5559a.72.16946575108274991"
4034
4034
  // }
4035
4035
  //
4036
- const data = this.safeValue(response, 'data', {});
4036
+ const data = this.safeDict(response, 'data', {});
4037
4037
  return this.parseOpenInterest(data, market);
4038
4038
  }
4039
4039
  parseOpenInterest(interest, market = undefined) {
@@ -4198,7 +4198,7 @@ class bitmart extends bitmart$1 {
4198
4198
  // }
4199
4199
  //
4200
4200
  const data = this.safeValue(response, 'data', []);
4201
- const first = this.safeValue(data, 0, {});
4201
+ const first = this.safeDict(data, 0, {});
4202
4202
  return this.parsePosition(first, market);
4203
4203
  }
4204
4204
  async fetchPositions(symbols = undefined, params = {}) {
@@ -1662,7 +1662,7 @@ class bitopro extends bitopro$1 {
1662
1662
  // ]
1663
1663
  // }
1664
1664
  //
1665
- const data = this.safeValue(response, 'data', []);
1665
+ const data = this.safeList(response, 'data', []);
1666
1666
  return this.parseDepositWithdrawFees(data, codes, 'currency');
1667
1667
  }
1668
1668
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
@@ -2566,7 +2566,7 @@ class bitrue extends bitrue$1 {
2566
2566
  // ]
2567
2567
  // }
2568
2568
  //
2569
- const data = this.safeValue(response, 'data', []);
2569
+ const data = this.safeList(response, 'data', []);
2570
2570
  return this.parseTransactions(data, currency, since, limit);
2571
2571
  }
2572
2572
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2819,7 +2819,7 @@ class bitrue extends bitrue$1 {
2819
2819
  // }
2820
2820
  // }
2821
2821
  //
2822
- const data = this.safeValue(response, 'data', {});
2822
+ const data = this.safeDict(response, 'data', {});
2823
2823
  return this.parseTransaction(data, currency);
2824
2824
  }
2825
2825
  parseDepositWithdrawFee(fee, currency = undefined) {
@@ -2875,7 +2875,7 @@ class bitrue extends bitrue$1 {
2875
2875
  */
2876
2876
  await this.loadMarkets();
2877
2877
  const response = await this.spotV1PublicGetExchangeInfo(params);
2878
- const coins = this.safeValue(response, 'coins');
2878
+ const coins = this.safeList(response, 'coins');
2879
2879
  return this.parseDepositWithdrawFees(coins, codes, 'coin');
2880
2880
  }
2881
2881
  parseTransfer(transfer, currency = undefined) {
@@ -3003,7 +3003,7 @@ class bitrue extends bitrue$1 {
3003
3003
  // 'data': null
3004
3004
  // }
3005
3005
  //
3006
- const data = this.safeValue(response, 'data', {});
3006
+ const data = this.safeDict(response, 'data', {});
3007
3007
  return this.parseTransfer(data, currency);
3008
3008
  }
3009
3009
  async setLeverage(leverage, symbol = undefined, params = {}) {
@@ -687,7 +687,7 @@ class bitso extends bitso$1 {
687
687
  // ]
688
688
  // }
689
689
  //
690
- const payload = this.safeValue(response, 'payload', []);
690
+ const payload = this.safeList(response, 'payload', []);
691
691
  return this.parseOHLCVs(payload, market, timeframe, since, limit);
692
692
  }
693
693
  parseOHLCV(ohlcv, market = undefined) {
@@ -1246,7 +1246,7 @@ class bitso extends bitso$1 {
1246
1246
  // }
1247
1247
  //
1248
1248
  const transactions = this.safeValue(response, 'payload', []);
1249
- const first = this.safeValue(transactions, 0, {});
1249
+ const first = this.safeDict(transactions, 0, {});
1250
1250
  return this.parseTransaction(first);
1251
1251
  }
1252
1252
  async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1290,7 +1290,7 @@ class bitso extends bitso$1 {
1290
1290
  // }]
1291
1291
  // }
1292
1292
  //
1293
- const transactions = this.safeValue(response, 'payload', []);
1293
+ const transactions = this.safeList(response, 'payload', []);
1294
1294
  return this.parseTransactions(transactions, currency, since, limit, params);
1295
1295
  }
1296
1296
  async fetchDepositAddress(code, params = {}) {
@@ -1473,7 +1473,7 @@ class bitso extends bitso$1 {
1473
1473
  // }
1474
1474
  // }
1475
1475
  //
1476
- const payload = this.safeValue(response, 'payload', {});
1476
+ const payload = this.safeList(response, 'payload', []);
1477
1477
  return this.parseDepositWithdrawFees(payload, codes);
1478
1478
  }
1479
1479
  parseDepositWithdrawFees(response, codes = undefined, currencyIdKey = undefined) {
@@ -1609,7 +1609,7 @@ class bitso extends bitso$1 {
1609
1609
  // }
1610
1610
  //
1611
1611
  const payload = this.safeValue(response, 'payload', []);
1612
- const first = this.safeValue(payload, 0);
1612
+ const first = this.safeDict(payload, 0);
1613
1613
  return this.parseTransaction(first, currency);
1614
1614
  }
1615
1615
  safeNetwork(networkId) {
@@ -1110,7 +1110,7 @@ class bitstamp extends bitstamp$1 {
1110
1110
  // }
1111
1111
  //
1112
1112
  const data = this.safeValue(response, 'data', {});
1113
- const ohlc = this.safeValue(data, 'ohlc', []);
1113
+ const ohlc = this.safeList(data, 'ohlc', []);
1114
1114
  return this.parseOHLCVs(ohlc, market, timeframe, since, limit);
1115
1115
  }
1116
1116
  parseBalance(response) {
@@ -671,7 +671,7 @@ class bitteam extends bitteam$1 {
671
671
  // }
672
672
  //
673
673
  const result = this.safeValue(response, 'result', {});
674
- const data = this.safeValue(result, 'data', []);
674
+ const data = this.safeList(result, 'data', []);
675
675
  return this.parseOHLCVs(data, market, timeframe, since, limit);
676
676
  }
677
677
  parseOHLCV(ohlcv, market = undefined) {
@@ -852,7 +852,7 @@ class bitteam extends bitteam$1 {
852
852
  // }
853
853
  //
854
854
  const result = this.safeValue(response, 'result', {});
855
- const orders = this.safeValue(result, 'orders', []);
855
+ const orders = this.safeList(result, 'orders', []);
856
856
  return this.parseOrders(orders, market, since, limit);
857
857
  }
858
858
  async fetchOrder(id, symbol = undefined, params = {}) {
@@ -912,7 +912,7 @@ class bitteam extends bitteam$1 {
912
912
  // }
913
913
  // }
914
914
  //
915
- const result = this.safeValue(response, 'result');
915
+ const result = this.safeDict(response, 'result');
916
916
  return this.parseOrder(result, market);
917
917
  }
918
918
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1023,7 +1023,7 @@ class bitteam extends bitteam$1 {
1023
1023
  // }
1024
1024
  // }
1025
1025
  //
1026
- const order = this.safeValue(response, 'result', {});
1026
+ const order = this.safeDict(response, 'result', {});
1027
1027
  return this.parseOrder(order, market);
1028
1028
  }
1029
1029
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -1050,7 +1050,7 @@ class bitteam extends bitteam$1 {
1050
1050
  // }
1051
1051
  // }
1052
1052
  //
1053
- const result = this.safeValue(response, 'result', {});
1053
+ const result = this.safeDict(response, 'result', {});
1054
1054
  return this.parseOrder(result);
1055
1055
  }
1056
1056
  async cancelAllOrders(symbol = undefined, params = {}) {
@@ -1513,7 +1513,7 @@ class bitteam extends bitteam$1 {
1513
1513
  // }
1514
1514
  //
1515
1515
  const result = this.safeValue(response, 'result', {});
1516
- const pair = this.safeValue(result, 'pair', {});
1516
+ const pair = this.safeDict(result, 'pair', {});
1517
1517
  return this.parseTicker(pair, market);
1518
1518
  }
1519
1519
  parseTicker(ticker, market = undefined) {
@@ -1842,7 +1842,7 @@ class bitteam extends bitteam$1 {
1842
1842
  // }
1843
1843
  //
1844
1844
  const result = this.safeValue(response, 'result', {});
1845
- const trades = this.safeValue(result, 'trades', []);
1845
+ const trades = this.safeList(result, 'trades', []);
1846
1846
  return this.parseTrades(trades, market, since, limit);
1847
1847
  }
1848
1848
  parseTrade(trade, market = undefined) {
@@ -2145,7 +2145,7 @@ class bitteam extends bitteam$1 {
2145
2145
  // }
2146
2146
  //
2147
2147
  const result = this.safeValue(response, 'result', {});
2148
- const transactions = this.safeValue(result, 'transactions', []);
2148
+ const transactions = this.safeList(result, 'transactions', []);
2149
2149
  return this.parseTransactions(transactions, currency, since, limit);
2150
2150
  }
2151
2151
  parseTransaction(transaction, currency = undefined) {
@@ -175,7 +175,7 @@ class bl3p extends bl3p$1 {
175
175
  'market': market['id'],
176
176
  };
177
177
  const response = await this.publicGetMarketOrderbook(this.extend(request, params));
178
- const orderbook = this.safeValue(response, 'data');
178
+ const orderbook = this.safeDict(response, 'data');
179
179
  return this.parseOrderBook(orderbook, market['symbol'], undefined, 'bids', 'asks', 'price_int', 'amount_int');
180
180
  }
181
181
  parseTicker(ticker, market = undefined) {
@@ -415,7 +415,7 @@ class btcturk extends btcturk$1 {
415
415
  */
416
416
  await this.loadMarkets();
417
417
  const response = await this.publicGetTicker(params);
418
- const tickers = this.safeValue(response, 'data');
418
+ const tickers = this.safeList(response, 'data');
419
419
  return this.parseTickers(tickers, symbols);
420
420
  }
421
421
  async fetchTicker(symbol, params = {}) {
@@ -533,7 +533,7 @@ class btcturk extends btcturk$1 {
533
533
  // ]
534
534
  // }
535
535
  //
536
- const data = this.safeValue(response, 'data');
536
+ const data = this.safeList(response, 'data');
537
537
  return this.parseTrades(data, market, since, limit);
538
538
  }
539
539
  parseOHLCV(ohlcv, market = undefined) {
@@ -690,7 +690,7 @@ class btcturk extends btcturk$1 {
690
690
  request['newClientOrderId'] = this.uuid();
691
691
  }
692
692
  const response = await this.privatePostOrder(this.extend(request, params));
693
- const data = this.safeValue(response, 'data');
693
+ const data = this.safeDict(response, 'data');
694
694
  return this.parseOrder(data, market);
695
695
  }
696
696
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -731,7 +731,7 @@ class btcturk extends btcturk$1 {
731
731
  const response = await this.privateGetOpenOrders(this.extend(request, params));
732
732
  const data = this.safeValue(response, 'data');
733
733
  const bids = this.safeValue(data, 'bids', []);
734
- const asks = this.safeValue(data, 'asks', []);
734
+ const asks = this.safeList(data, 'asks', []);
735
735
  return this.parseOrders(this.arrayConcat(bids, asks), market, since, limit);
736
736
  }
737
737
  async fetchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -779,7 +779,7 @@ class btcturk extends btcturk$1 {
779
779
  // }
780
780
  // ]
781
781
  // }
782
- const data = this.safeValue(response, 'data');
782
+ const data = this.safeList(response, 'data');
783
783
  return this.parseOrders(data, market, since, limit);
784
784
  }
785
785
  parseOrderStatus(status) {
@@ -896,7 +896,7 @@ class btcturk extends btcturk$1 {
896
896
  // "code": "0"
897
897
  // }
898
898
  //
899
- const data = this.safeValue(response, 'data');
899
+ const data = this.safeList(response, 'data');
900
900
  return this.parseTrades(data, market, since, limit);
901
901
  }
902
902
  nonce() {