ccxt 4.5.82 → 4.5.83

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 (446) hide show
  1. package/README.md +5 -4
  2. package/dist/ccxt.browser.min.js +2 -2
  3. package/dist/cjs/ccxt.js +3 -1
  4. package/dist/cjs/src/abstract/prediction/sxbet.js +11 -0
  5. package/dist/cjs/src/apex.js +1 -0
  6. package/dist/cjs/src/aster.js +2 -2
  7. package/dist/cjs/src/base/Exchange.js +1 -1
  8. package/dist/cjs/src/bigone.js +2 -2
  9. package/dist/cjs/src/binance.js +10 -10
  10. package/dist/cjs/src/bingx.js +3 -3
  11. package/dist/cjs/src/bit2c.js +4 -4
  12. package/dist/cjs/src/bitbank.js +15 -15
  13. package/dist/cjs/src/bitfinex.js +15 -15
  14. package/dist/cjs/src/bitget.js +109 -73
  15. package/dist/cjs/src/bitmex.js +7 -7
  16. package/dist/cjs/src/bitopro.js +2 -2
  17. package/dist/cjs/src/bitrue.js +6 -6
  18. package/dist/cjs/src/bitso.js +18 -18
  19. package/dist/cjs/src/bitstamp.js +5 -5
  20. package/dist/cjs/src/bitteam.js +32 -32
  21. package/dist/cjs/src/bittrade.js +10 -10
  22. package/dist/cjs/src/bitvavo.js +9 -9
  23. package/dist/cjs/src/blockchaincom.js +2 -2
  24. package/dist/cjs/src/btcbox.js +2 -2
  25. package/dist/cjs/src/btcmarkets.js +2 -2
  26. package/dist/cjs/src/btcturk.js +2 -2
  27. package/dist/cjs/src/btse.js +2 -2
  28. package/dist/cjs/src/bybitid.js +4 -0
  29. package/dist/cjs/src/coinbase.js +1 -1
  30. package/dist/cjs/src/coinbaseexchange.js +13 -13
  31. package/dist/cjs/src/coincheck.js +4 -4
  32. package/dist/cjs/src/coinex.js +10 -10
  33. package/dist/cjs/src/coinmate.js +4 -4
  34. package/dist/cjs/src/coinone.js +4 -4
  35. package/dist/cjs/src/coinsph.js +5 -5
  36. package/dist/cjs/src/cryptocom.js +5 -5
  37. package/dist/cjs/src/deribit.js +31 -31
  38. package/dist/cjs/src/derive.js +1 -1
  39. package/dist/cjs/src/digifinex.js +31 -31
  40. package/dist/cjs/src/gate.js +25 -25
  41. package/dist/cjs/src/gemini.js +5 -5
  42. package/dist/cjs/src/grvt.js +1 -1
  43. package/dist/cjs/src/hibachi.js +5 -5
  44. package/dist/cjs/src/hitbtc.js +15 -15
  45. package/dist/cjs/src/hollaex.js +15 -15
  46. package/dist/cjs/src/htx.js +52 -52
  47. package/dist/cjs/src/hyperliquid.js +2 -2
  48. package/dist/cjs/src/independentreserve.js +2 -2
  49. package/dist/cjs/src/indodax.js +8 -8
  50. package/dist/cjs/src/kraken.js +29 -29
  51. package/dist/cjs/src/krakenfutures.js +16 -16
  52. package/dist/cjs/src/kucoin.js +15 -15
  53. package/dist/cjs/src/latoken.js +8 -8
  54. package/dist/cjs/src/lbank.js +31 -31
  55. package/dist/cjs/src/lighter.js +2 -2
  56. package/dist/cjs/src/luno.js +2 -2
  57. package/dist/cjs/src/mercado.js +12 -12
  58. package/dist/cjs/src/mexc.js +27 -27
  59. package/dist/cjs/src/modetrade.js +10 -10
  60. package/dist/cjs/src/ndax.js +4 -4
  61. package/dist/cjs/src/okx.js +19 -20
  62. package/dist/cjs/src/onetrading.js +7 -7
  63. package/dist/cjs/src/p2b.js +8 -8
  64. package/dist/cjs/src/pacifica.js +9 -3
  65. package/dist/cjs/src/paymium.js +2 -2
  66. package/dist/cjs/src/phemex.js +37 -37
  67. package/dist/cjs/src/poloniex.js +14 -14
  68. package/dist/cjs/src/prediction/sxbet.js +2710 -0
  69. package/dist/cjs/src/pro/alpaca.js +5 -5
  70. package/dist/cjs/src/pro/apex.js +6 -6
  71. package/dist/cjs/src/pro/aster.js +8 -8
  72. package/dist/cjs/src/pro/backpack.js +1 -1
  73. package/dist/cjs/src/pro/binance.js +26 -26
  74. package/dist/cjs/src/pro/bingx.js +11 -11
  75. package/dist/cjs/src/pro/bitfinex.js +11 -11
  76. package/dist/cjs/src/pro/bitget.js +20 -20
  77. package/dist/cjs/src/pro/bithumb.js +1 -1
  78. package/dist/cjs/src/pro/bitmex.js +12 -12
  79. package/dist/cjs/src/pro/bitopro.js +5 -5
  80. package/dist/cjs/src/pro/bitrue.js +7 -7
  81. package/dist/cjs/src/pro/bitstamp.js +5 -5
  82. package/dist/cjs/src/pro/bittrade.js +11 -11
  83. package/dist/cjs/src/pro/bitvavo.js +16 -16
  84. package/dist/cjs/src/pro/blockchaincom.js +5 -5
  85. package/dist/cjs/src/pro/blofin.js +2 -2
  86. package/dist/cjs/src/pro/bybit.js +21 -21
  87. package/dist/cjs/src/pro/bydfi.js +2 -2
  88. package/dist/cjs/src/pro/cex.js +19 -19
  89. package/dist/cjs/src/pro/coinbase.js +2 -2
  90. package/dist/cjs/src/pro/coinbaseexchange.js +9 -9
  91. package/dist/cjs/src/pro/coinbaseinternational.js +2 -2
  92. package/dist/cjs/src/pro/coincheck.js +2 -2
  93. package/dist/cjs/src/pro/coinex.js +3 -3
  94. package/dist/cjs/src/pro/coinone.js +6 -6
  95. package/dist/cjs/src/pro/cryptocom.js +10 -10
  96. package/dist/cjs/src/pro/deribit.js +13 -13
  97. package/dist/cjs/src/pro/derive.js +4 -4
  98. package/dist/cjs/src/pro/dydx.js +1 -1
  99. package/dist/cjs/src/pro/extended.js +16 -10
  100. package/dist/cjs/src/pro/gate.js +10 -10
  101. package/dist/cjs/src/pro/gemini.js +3 -3
  102. package/dist/cjs/src/pro/grvt.js +2 -2
  103. package/dist/cjs/src/pro/hashkey.js +2 -2
  104. package/dist/cjs/src/pro/hitbtc.js +6 -6
  105. package/dist/cjs/src/pro/hollaex.js +3 -3
  106. package/dist/cjs/src/pro/htx.js +28 -28
  107. package/dist/cjs/src/pro/hyperliquid.js +1 -1
  108. package/dist/cjs/src/pro/independentreserve.js +2 -2
  109. package/dist/cjs/src/pro/kraken.js +7 -7
  110. package/dist/cjs/src/pro/krakenfutures.js +12 -12
  111. package/dist/cjs/src/pro/kucoin.js +12 -12
  112. package/dist/cjs/src/pro/lbank.js +16 -16
  113. package/dist/cjs/src/pro/luno.js +2 -2
  114. package/dist/cjs/src/pro/mexc.js +8 -8
  115. package/dist/cjs/src/pro/modetrade.js +3 -3
  116. package/dist/cjs/src/pro/mudrex.js +2 -2
  117. package/dist/cjs/src/pro/nado.js +3 -3
  118. package/dist/cjs/src/pro/ndax.js +6 -6
  119. package/dist/cjs/src/pro/okx.js +20 -20
  120. package/dist/cjs/src/pro/onetrading.js +14 -14
  121. package/dist/cjs/src/pro/p2b.js +5 -5
  122. package/dist/cjs/src/pro/pacifica.js +1 -1
  123. package/dist/cjs/src/pro/paradex.js +1 -1
  124. package/dist/cjs/src/pro/phemex.js +13 -13
  125. package/dist/cjs/src/pro/poloniex.js +17 -17
  126. package/dist/cjs/src/pro/toobit.js +2 -2
  127. package/dist/cjs/src/pro/upbit.js +4 -4
  128. package/dist/cjs/src/pro/weex.js +2 -2
  129. package/dist/cjs/src/pro/whitebit.js +12 -12
  130. package/dist/cjs/src/pro/woo.js +13 -13
  131. package/dist/cjs/src/pro/woofipro.js +3 -3
  132. package/dist/cjs/src/pro/xt.js +3 -3
  133. package/dist/cjs/src/tokocrypto.js +20 -20
  134. package/dist/cjs/src/upbit.js +12 -12
  135. package/dist/cjs/src/whitebit.js +15 -15
  136. package/dist/cjs/src/woo.js +3 -3
  137. package/dist/cjs/src/woofipro.js +14 -14
  138. package/dist/cjs/src/zaif.js +9 -3
  139. package/dist/cjs/src/zebpay.js +1 -1
  140. package/js/ccxt.d.ts +4 -1
  141. package/js/ccxt.js +3 -1
  142. package/js/src/abstract/prediction/sxbet.d.ts +41 -0
  143. package/js/src/abstract/prediction/sxbet.js +11 -0
  144. package/js/src/alpaca.d.ts +28 -33
  145. package/js/src/apex.d.ts +28 -42
  146. package/js/src/apex.js +1 -0
  147. package/js/src/aster.d.ts +58 -108
  148. package/js/src/aster.js +2 -2
  149. package/js/src/backpack.d.ts +34 -48
  150. package/js/src/base/Exchange.d.ts +304 -320
  151. package/js/src/base/Exchange.js +1 -1
  152. package/js/src/bigone.d.ts +24 -29
  153. package/js/src/bigone.js +2 -2
  154. package/js/src/binance.d.ts +112 -138
  155. package/js/src/binance.js +10 -10
  156. package/js/src/binancecoinm.d.ts +3 -2
  157. package/js/src/binanceusdm.d.ts +3 -2
  158. package/js/src/bingx.d.ts +65 -84
  159. package/js/src/bingx.js +3 -3
  160. package/js/src/bit2c.d.ts +13 -18
  161. package/js/src/bit2c.js +4 -4
  162. package/js/src/bitbank.d.ts +16 -21
  163. package/js/src/bitbank.js +15 -15
  164. package/js/src/bitbns.d.ts +15 -20
  165. package/js/src/bitfinex.d.ts +46 -51
  166. package/js/src/bitfinex.js +15 -15
  167. package/js/src/bitflyer.d.ts +20 -25
  168. package/js/src/bitget.d.ts +105 -93
  169. package/js/src/bitget.js +109 -73
  170. package/js/src/bithumb.d.ts +26 -31
  171. package/js/src/bitmex.d.ts +48 -65
  172. package/js/src/bitmex.js +7 -7
  173. package/js/src/bitopro.d.ts +25 -41
  174. package/js/src/bitopro.js +2 -2
  175. package/js/src/bitrue.d.ts +30 -45
  176. package/js/src/bitrue.js +6 -6
  177. package/js/src/bitso.d.ts +24 -29
  178. package/js/src/bitso.js +18 -18
  179. package/js/src/bitstamp.d.ts +36 -47
  180. package/js/src/bitstamp.js +5 -5
  181. package/js/src/bitteam.d.ts +22 -27
  182. package/js/src/bitteam.js +32 -32
  183. package/js/src/bittrade.d.ts +35 -46
  184. package/js/src/bittrade.js +10 -10
  185. package/js/src/bitvavo.d.ts +43 -48
  186. package/js/src/bitvavo.js +9 -9
  187. package/js/src/blockchaincom.d.ts +26 -31
  188. package/js/src/blockchaincom.js +2 -2
  189. package/js/src/blofin.d.ts +38 -43
  190. package/js/src/btcbox.d.ts +14 -19
  191. package/js/src/btcbox.js +2 -2
  192. package/js/src/btcmarkets.d.ts +25 -30
  193. package/js/src/btcmarkets.js +2 -2
  194. package/js/src/btcturk.d.ts +13 -18
  195. package/js/src/btcturk.js +2 -2
  196. package/js/src/btse.d.ts +44 -50
  197. package/js/src/btse.js +2 -2
  198. package/js/src/bullish.d.ts +35 -57
  199. package/js/src/bybit.d.ts +95 -106
  200. package/js/src/bybitid.js +4 -0
  201. package/js/src/bydfi.d.ts +37 -48
  202. package/js/src/cex.d.ts +29 -34
  203. package/js/src/coinbase.d.ts +66 -82
  204. package/js/src/coinbase.js +1 -1
  205. package/js/src/coinbaseexchange.d.ts +33 -43
  206. package/js/src/coinbaseexchange.js +13 -13
  207. package/js/src/coinbaseinternational.d.ts +34 -73
  208. package/js/src/coincheck.d.ts +13 -18
  209. package/js/src/coincheck.js +4 -4
  210. package/js/src/coinex.d.ts +63 -68
  211. package/js/src/coinex.js +10 -10
  212. package/js/src/coinmate.d.ts +15 -20
  213. package/js/src/coinmate.js +4 -4
  214. package/js/src/coinone.d.ts +14 -19
  215. package/js/src/coinone.js +4 -4
  216. package/js/src/coinsph.d.ts +32 -37
  217. package/js/src/coinsph.js +5 -5
  218. package/js/src/coinspot.d.ts +10 -15
  219. package/js/src/cryptocom.d.ts +48 -64
  220. package/js/src/cryptocom.js +5 -5
  221. package/js/src/cryptomus.d.ts +15 -23
  222. package/js/src/deepcoin.d.ts +43 -48
  223. package/js/src/delta.d.ts +43 -54
  224. package/js/src/deribit.d.ts +48 -69
  225. package/js/src/deribit.js +31 -31
  226. package/js/src/derive.d.ts +28 -42
  227. package/js/src/derive.js +1 -1
  228. package/js/src/digifinex.d.ts +54 -67
  229. package/js/src/digifinex.js +31 -31
  230. package/js/src/dydx.d.ts +26 -31
  231. package/js/src/extended.d.ts +51 -56
  232. package/js/src/foxbit.d.ts +34 -64
  233. package/js/src/gate.d.ts +94 -162
  234. package/js/src/gate.js +25 -25
  235. package/js/src/gemini.d.ts +33 -43
  236. package/js/src/gemini.js +5 -5
  237. package/js/src/grvt.d.ts +36 -47
  238. package/js/src/grvt.js +1 -1
  239. package/js/src/hashkey.d.ts +58 -78
  240. package/js/src/hibachi.d.ts +42 -52
  241. package/js/src/hibachi.js +5 -5
  242. package/js/src/hitbtc.d.ts +49 -56
  243. package/js/src/hitbtc.js +15 -15
  244. package/js/src/hollaex.d.ts +26 -31
  245. package/js/src/hollaex.js +15 -15
  246. package/js/src/htx.d.ts +80 -121
  247. package/js/src/htx.js +52 -52
  248. package/js/src/hyperliquid.d.ts +77 -127
  249. package/js/src/hyperliquid.js +2 -2
  250. package/js/src/independentreserve.d.ts +15 -20
  251. package/js/src/independentreserve.js +2 -2
  252. package/js/src/indodax.d.ts +19 -24
  253. package/js/src/indodax.js +8 -8
  254. package/js/src/kraken.d.ts +43 -55
  255. package/js/src/kraken.js +29 -29
  256. package/js/src/krakenfutures.d.ts +34 -39
  257. package/js/src/krakenfutures.js +16 -16
  258. package/js/src/kucoin.d.ts +121 -132
  259. package/js/src/kucoin.js +15 -15
  260. package/js/src/kucoinfutures.d.ts +4 -4
  261. package/js/src/latoken.d.ts +24 -29
  262. package/js/src/latoken.js +8 -8
  263. package/js/src/lbank.d.ts +40 -53
  264. package/js/src/lbank.js +31 -31
  265. package/js/src/lighter.d.ts +40 -45
  266. package/js/src/lighter.js +2 -2
  267. package/js/src/luno.d.ts +25 -30
  268. package/js/src/luno.js +2 -2
  269. package/js/src/mercado.d.ts +15 -20
  270. package/js/src/mercado.js +12 -12
  271. package/js/src/mexc.d.ts +70 -83
  272. package/js/src/mexc.js +27 -27
  273. package/js/src/modetrade.d.ts +43 -57
  274. package/js/src/modetrade.js +10 -10
  275. package/js/src/mudrex.d.ts +25 -35
  276. package/js/src/nado.d.ts +45 -50
  277. package/js/src/ndax.d.ts +27 -32
  278. package/js/src/ndax.js +4 -4
  279. package/js/src/okx.d.ts +97 -108
  280. package/js/src/okx.js +19 -20
  281. package/js/src/onetrading.d.ts +23 -31
  282. package/js/src/onetrading.js +7 -7
  283. package/js/src/p2b.d.ts +17 -22
  284. package/js/src/p2b.js +8 -8
  285. package/js/src/pacifica.d.ts +55 -73
  286. package/js/src/pacifica.js +9 -3
  287. package/js/src/paradex.d.ts +47 -68
  288. package/js/src/paymium.d.ts +12 -17
  289. package/js/src/paymium.js +2 -2
  290. package/js/src/phemex.d.ts +47 -52
  291. package/js/src/phemex.js +37 -37
  292. package/js/src/poloniex.d.ts +45 -50
  293. package/js/src/poloniex.js +14 -14
  294. package/js/src/prediction/sxbet.d.ts +595 -0
  295. package/js/src/prediction/sxbet.js +2708 -0
  296. package/js/src/pro/alpaca.d.ts +23 -23
  297. package/js/src/pro/alpaca.js +5 -5
  298. package/js/src/pro/apex.d.ts +28 -28
  299. package/js/src/pro/apex.js +6 -6
  300. package/js/src/pro/aster.d.ts +33 -33
  301. package/js/src/pro/aster.js +8 -8
  302. package/js/src/pro/backpack.d.ts +28 -28
  303. package/js/src/pro/backpack.js +1 -1
  304. package/js/src/pro/binance.d.ts +57 -57
  305. package/js/src/pro/binance.js +26 -26
  306. package/js/src/pro/bingx.d.ts +26 -26
  307. package/js/src/pro/bingx.js +11 -11
  308. package/js/src/pro/bitfinex.d.ts +25 -25
  309. package/js/src/pro/bitfinex.js +11 -11
  310. package/js/src/pro/bitget.d.ts +41 -41
  311. package/js/src/pro/bitget.js +20 -20
  312. package/js/src/pro/bithumb.d.ts +15 -15
  313. package/js/src/pro/bithumb.js +1 -1
  314. package/js/src/pro/bitmex.d.ts +29 -29
  315. package/js/src/pro/bitmex.js +12 -12
  316. package/js/src/pro/bitopro.d.ts +13 -13
  317. package/js/src/pro/bitopro.js +5 -5
  318. package/js/src/pro/bitrue.d.ts +25 -25
  319. package/js/src/pro/bitrue.js +7 -7
  320. package/js/src/pro/bitstamp.d.ts +21 -21
  321. package/js/src/pro/bitstamp.js +5 -5
  322. package/js/src/pro/bittrade.d.ts +19 -19
  323. package/js/src/pro/bittrade.js +11 -11
  324. package/js/src/pro/bitvavo.d.ts +62 -62
  325. package/js/src/pro/bitvavo.js +16 -16
  326. package/js/src/pro/blockchaincom.d.ts +19 -19
  327. package/js/src/pro/blockchaincom.js +5 -5
  328. package/js/src/pro/blofin.d.ts +23 -23
  329. package/js/src/pro/blofin.js +2 -2
  330. package/js/src/pro/bullish.d.ts +19 -25
  331. package/js/src/pro/bybit.d.ts +42 -45
  332. package/js/src/pro/bybit.js +21 -21
  333. package/js/src/pro/bydfi.d.ts +24 -24
  334. package/js/src/pro/bydfi.js +2 -2
  335. package/js/src/pro/cex.d.ts +37 -37
  336. package/js/src/pro/cex.js +19 -19
  337. package/js/src/pro/coinbase.d.ts +19 -19
  338. package/js/src/pro/coinbase.js +2 -2
  339. package/js/src/pro/coinbaseexchange.d.ts +25 -25
  340. package/js/src/pro/coinbaseexchange.js +9 -9
  341. package/js/src/pro/coinbaseinternational.d.ts +20 -20
  342. package/js/src/pro/coinbaseinternational.js +2 -2
  343. package/js/src/pro/coincheck.d.ts +5 -5
  344. package/js/src/pro/coincheck.js +2 -2
  345. package/js/src/pro/coinex.d.ts +24 -24
  346. package/js/src/pro/coinex.js +3 -3
  347. package/js/src/pro/coinone.d.ts +9 -11
  348. package/js/src/pro/coinone.js +6 -6
  349. package/js/src/pro/cryptocom.d.ts +40 -40
  350. package/js/src/pro/cryptocom.js +10 -10
  351. package/js/src/pro/deepcoin.d.ts +24 -32
  352. package/js/src/pro/deribit.d.ts +24 -24
  353. package/js/src/pro/deribit.js +13 -13
  354. package/js/src/pro/derive.d.ts +22 -22
  355. package/js/src/pro/derive.js +4 -4
  356. package/js/src/pro/dydx.d.ts +9 -9
  357. package/js/src/pro/dydx.js +1 -1
  358. package/js/src/pro/extended.d.ts +22 -22
  359. package/js/src/pro/extended.js +16 -10
  360. package/js/src/pro/gate.d.ts +50 -50
  361. package/js/src/pro/gate.js +10 -10
  362. package/js/src/pro/gemini.d.ts +26 -26
  363. package/js/src/pro/gemini.js +3 -3
  364. package/js/src/pro/grvt.d.ts +22 -22
  365. package/js/src/pro/grvt.js +2 -2
  366. package/js/src/pro/hashkey.d.ts +19 -19
  367. package/js/src/pro/hashkey.js +2 -2
  368. package/js/src/pro/hitbtc.d.ts +32 -32
  369. package/js/src/pro/hitbtc.js +6 -6
  370. package/js/src/pro/hollaex.d.ts +15 -17
  371. package/js/src/pro/hollaex.js +3 -3
  372. package/js/src/pro/htx.d.ts +36 -36
  373. package/js/src/pro/htx.js +28 -28
  374. package/js/src/pro/hyperliquid.d.ts +29 -31
  375. package/js/src/pro/hyperliquid.js +1 -1
  376. package/js/src/pro/independentreserve.d.ts +10 -10
  377. package/js/src/pro/independentreserve.js +2 -2
  378. package/js/src/pro/kraken.d.ts +41 -55
  379. package/js/src/pro/kraken.js +7 -7
  380. package/js/src/pro/krakenfutures.d.ts +32 -32
  381. package/js/src/pro/krakenfutures.js +12 -12
  382. package/js/src/pro/kucoin.d.ts +69 -72
  383. package/js/src/pro/kucoin.js +12 -12
  384. package/js/src/pro/kucoinfutures.d.ts +4 -4
  385. package/js/src/pro/lbank.d.ts +22 -22
  386. package/js/src/pro/lbank.js +16 -16
  387. package/js/src/pro/lighter.d.ts +27 -27
  388. package/js/src/pro/luno.d.ts +8 -8
  389. package/js/src/pro/luno.js +2 -2
  390. package/js/src/pro/mexc.d.ts +33 -33
  391. package/js/src/pro/mexc.js +8 -8
  392. package/js/src/pro/modetrade.d.ts +37 -39
  393. package/js/src/pro/modetrade.js +3 -3
  394. package/js/src/pro/mudrex.d.ts +8 -8
  395. package/js/src/pro/mudrex.js +2 -2
  396. package/js/src/pro/nado.d.ts +42 -46
  397. package/js/src/pro/nado.js +3 -3
  398. package/js/src/pro/ndax.d.ts +12 -12
  399. package/js/src/pro/ndax.js +6 -6
  400. package/js/src/pro/okx.d.ts +49 -49
  401. package/js/src/pro/okx.js +20 -20
  402. package/js/src/pro/onetrading.d.ts +28 -28
  403. package/js/src/pro/onetrading.js +14 -14
  404. package/js/src/pro/p2b.d.ts +15 -19
  405. package/js/src/pro/p2b.js +5 -5
  406. package/js/src/pro/pacifica.d.ts +22 -22
  407. package/js/src/pro/pacifica.js +1 -1
  408. package/js/src/pro/paradex.d.ts +18 -18
  409. package/js/src/pro/paradex.js +1 -1
  410. package/js/src/pro/phemex.d.ts +25 -25
  411. package/js/src/pro/phemex.js +13 -13
  412. package/js/src/pro/poloniex.d.ts +30 -32
  413. package/js/src/pro/poloniex.js +17 -17
  414. package/js/src/pro/toobit.d.ts +31 -31
  415. package/js/src/pro/toobit.js +2 -2
  416. package/js/src/pro/upbit.d.ts +24 -24
  417. package/js/src/pro/upbit.js +4 -4
  418. package/js/src/pro/weex.d.ts +39 -39
  419. package/js/src/pro/weex.js +2 -2
  420. package/js/src/pro/whitebit.d.ts +26 -30
  421. package/js/src/pro/whitebit.js +12 -12
  422. package/js/src/pro/woo.d.ts +44 -46
  423. package/js/src/pro/woo.js +13 -13
  424. package/js/src/pro/woofipro.d.ts +39 -41
  425. package/js/src/pro/woofipro.js +3 -3
  426. package/js/src/pro/xt.d.ts +20 -20
  427. package/js/src/pro/xt.js +3 -3
  428. package/js/src/revolutx.d.ts +17 -17
  429. package/js/src/tokocrypto.d.ts +25 -30
  430. package/js/src/tokocrypto.js +20 -20
  431. package/js/src/toobit.d.ts +45 -79
  432. package/js/src/upbit.d.ts +28 -61
  433. package/js/src/upbit.js +12 -12
  434. package/js/src/weex.d.ts +57 -68
  435. package/js/src/whitebit.d.ts +53 -64
  436. package/js/src/whitebit.js +15 -15
  437. package/js/src/woo.d.ts +61 -75
  438. package/js/src/woo.js +3 -3
  439. package/js/src/woofipro.d.ts +53 -67
  440. package/js/src/woofipro.js +14 -14
  441. package/js/src/xt.d.ts +57 -67
  442. package/js/src/zaif.d.ts +11 -16
  443. package/js/src/zaif.js +9 -3
  444. package/js/src/zebpay.d.ts +32 -37
  445. package/js/src/zebpay.js +1 -1
  446. package/package.json +2 -2
@@ -239,7 +239,7 @@ class okx extends okx$1["default"] {
239
239
  const url = this.getUrl(channel, access);
240
240
  const trades = await this.watchMultiple(url, messageHashes, request, messageHashes);
241
241
  if (this.newUpdates) {
242
- const first = this.safeValue(trades, 0);
242
+ const first = this.safeDict(trades, 0);
243
243
  const tradeSymbol = this.safeString(first, 'symbol');
244
244
  limit = trades.getLimit(tradeSymbol, limit);
245
245
  }
@@ -329,7 +329,7 @@ class okx extends okx$1["default"] {
329
329
  // ]
330
330
  // }
331
331
  //
332
- const arg = this.safeValue(message, 'arg', {});
332
+ const arg = this.safeDict(message, 'arg', {});
333
333
  const channel = this.safeString(arg, 'channel');
334
334
  const marketId = this.safeString(arg, 'instId');
335
335
  const symbol = this.safeSymbol(marketId);
@@ -597,7 +597,7 @@ class okx extends okx$1["default"] {
597
597
  // ]
598
598
  // }
599
599
  //
600
- const arg = this.safeValue(message, 'arg', {});
600
+ const arg = this.safeDict(message, 'arg', {});
601
601
  const marketId = this.safeString(arg, 'instId');
602
602
  const market = this.safeMarket(marketId, undefined, '-');
603
603
  const symbol = market['symbol'];
@@ -860,7 +860,7 @@ class okx extends okx$1["default"] {
860
860
  if (this.markets === undefined) {
861
861
  await this.loadMarkets();
862
862
  }
863
- const isTrigger = this.safeValue2(params, 'stop', 'trigger', false);
863
+ const isTrigger = this.safeBool2(params, 'stop', 'trigger', false);
864
864
  params = this.omit(params, ['stop', 'trigger']);
865
865
  const accessType = (isTrigger === true) ? 'business' : 'private';
866
866
  await this.authenticate({ 'access': accessType });
@@ -1173,7 +1173,7 @@ class okx extends okx$1["default"] {
1173
1173
  // ]
1174
1174
  // }
1175
1175
  //
1176
- const arg = this.safeValue(message, 'arg', {});
1176
+ const arg = this.safeDict(message, 'arg', {});
1177
1177
  const channel = this.safeString(arg, 'channel');
1178
1178
  if (channel === undefined) {
1179
1179
  return;
@@ -1187,8 +1187,8 @@ class okx extends okx$1["default"] {
1187
1187
  const timeframe = this.findTimeframe(interval);
1188
1188
  for (let i = 0; i < data.length; i++) {
1189
1189
  const parsed = this.parseOHLCV(data[i], market);
1190
- this.ohlcvs[symbol] = this.safeValue(this.ohlcvs, symbol, {});
1191
- let stored = this.safeValue(this.safeValue(this.ohlcvs, symbol), timeframe);
1190
+ this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
1191
+ let stored = this.safeValue(this.safeDict(this.ohlcvs, symbol), timeframe);
1192
1192
  if (stored === undefined) {
1193
1193
  const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
1194
1194
  stored = new Cache.ArrayCacheByTimestamp(limit);
@@ -1386,8 +1386,8 @@ class okx extends okx$1["default"] {
1386
1386
  // "seqId": 123457
1387
1387
  // }
1388
1388
  //
1389
- const asks = this.safeValue(message, 'asks', []);
1390
- const bids = this.safeValue(message, 'bids', []);
1389
+ const asks = this.safeList(message, 'asks', []);
1390
+ const bids = this.safeList(message, 'bids', []);
1391
1391
  const storedAsks = orderbook['asks'];
1392
1392
  const storedBids = orderbook['bids'];
1393
1393
  this.handleDeltas(storedAsks, asks);
@@ -1712,7 +1712,7 @@ class okx extends okx$1["default"] {
1712
1712
  // ]
1713
1713
  // }
1714
1714
  //
1715
- const arg = this.safeValue(message, 'arg', {});
1715
+ const arg = this.safeDict(message, 'arg', {});
1716
1716
  const channel = this.safeString(arg, 'channel');
1717
1717
  const balance = this.parseTradingBalance(message);
1718
1718
  const newBalance = this.deepExtend(this.balance, balance);
@@ -1720,7 +1720,7 @@ class okx extends okx$1["default"] {
1720
1720
  client.resolve(this.balance, channel);
1721
1721
  }
1722
1722
  orderToTrade(order, market = undefined) {
1723
- const info = this.safeValue(order, 'info', {});
1723
+ const info = this.safeDict(order, 'info', {});
1724
1724
  const timestamp = this.safeInteger(info, 'fillTime');
1725
1725
  const feeMarketId = this.safeString(info, 'fillFeeCcy');
1726
1726
  const isTaker = this.safeString(info, 'execType', '') === 'T';
@@ -1910,7 +1910,7 @@ class okx extends okx$1["default"] {
1910
1910
  // }]
1911
1911
  // }
1912
1912
  //
1913
- const arg = this.safeValue(message, 'arg', {});
1913
+ const arg = this.safeDict(message, 'arg', {});
1914
1914
  const marketId = this.safeString(arg, 'instId');
1915
1915
  const market = this.safeMarket(marketId, undefined, '-');
1916
1916
  const symbol = market['symbol'];
@@ -1958,7 +1958,7 @@ class okx extends okx$1["default"] {
1958
1958
  let type = undefined;
1959
1959
  // By default, receive order updates from any instrument type
1960
1960
  [type, params] = this.handleOptionAndParams(params, 'watchOrders', 'type', 'ANY');
1961
- const isTrigger = this.safeValue2(params, 'stop', 'trigger', false);
1961
+ const isTrigger = this.safeBool2(params, 'stop', 'trigger', false);
1962
1962
  params = this.omit(params, ['stop', 'trigger']);
1963
1963
  if (this.markets === undefined) {
1964
1964
  await this.loadMarkets();
@@ -2051,7 +2051,7 @@ class okx extends okx$1["default"] {
2051
2051
  // }
2052
2052
  //
2053
2053
  this.handleMyTrades(client, message);
2054
- const arg = this.safeValue(message, 'arg', {});
2054
+ const arg = this.safeDict(message, 'arg', {});
2055
2055
  const channel = this.safeString(arg, 'channel');
2056
2056
  const orders = this.safeList(message, 'data', []);
2057
2057
  const ordersLength = orders.length;
@@ -2133,7 +2133,7 @@ class okx extends okx$1["default"] {
2133
2133
  // ]
2134
2134
  // }
2135
2135
  //
2136
- const arg = this.safeValue(message, 'arg', {});
2136
+ const arg = this.safeDict(message, 'arg', {});
2137
2137
  const channel = this.safeString(arg, 'channel');
2138
2138
  const rawOrders = this.safeList(message, 'data', []);
2139
2139
  const filteredOrders = [];
@@ -2243,7 +2243,7 @@ class okx extends okx$1["default"] {
2243
2243
  // }
2244
2244
  //
2245
2245
  const messageHash = this.safeString(message, 'id');
2246
- let args = this.safeValue(message, 'data', []);
2246
+ let args = this.safeList(message, 'data', []);
2247
2247
  // filter out partial errors
2248
2248
  args = this.filterBy(args, 'sCode', '0');
2249
2249
  // if empty means request failed and handle error
@@ -2426,7 +2426,7 @@ class okx extends okx$1["default"] {
2426
2426
  // }
2427
2427
  //
2428
2428
  const messageHash = this.safeString(message, 'id');
2429
- const data = this.safeValue(message, 'data', []);
2429
+ const data = this.safeList(message, 'data', []);
2430
2430
  client.resolve(data, messageHash);
2431
2431
  }
2432
2432
  handleSubscriptionStatus(client, message) {
@@ -2466,7 +2466,7 @@ class okx extends okx$1["default"] {
2466
2466
  if (errorCode !== '1') {
2467
2467
  this.throwExactlyMatchedException(this.exceptions['exact'], errorCode, feedback);
2468
2468
  }
2469
- let messageString = this.safeValue(message, 'msg');
2469
+ let messageString = this.safeString(message, 'msg');
2470
2470
  if (messageString !== undefined) {
2471
2471
  this.throwBroadlyMatchedException(this.exceptions['broad'], messageString, feedback);
2472
2472
  }
@@ -2478,7 +2478,7 @@ class okx extends okx$1["default"] {
2478
2478
  if (errorCode !== undefined) {
2479
2479
  this.throwExactlyMatchedException(this.exceptions['exact'], errorCode, feedback);
2480
2480
  }
2481
- messageString = this.safeValue(d, 'sMsg');
2481
+ messageString = this.safeString(d, 'sMsg');
2482
2482
  if (messageString !== undefined) {
2483
2483
  this.throwBroadlyMatchedException(this.exceptions['broad'], messageString, feedback);
2484
2484
  }
@@ -2579,7 +2579,7 @@ class okx extends okx$1["default"] {
2579
2579
  }
2580
2580
  }
2581
2581
  else {
2582
- const arg = this.safeValue(message, 'arg', {});
2582
+ const arg = this.safeDict(message, 'arg', {});
2583
2583
  const channel = this.safeString(arg, 'channel');
2584
2584
  if (channel === undefined) {
2585
2585
  return;
@@ -383,7 +383,7 @@ class onetrading extends onetrading$1["default"] {
383
383
  orderbook.reset(snapshot);
384
384
  }
385
385
  else if (type === 'ORDER_BOOK_UPDATE') {
386
- const changes = this.safeValue(message, 'changes', []);
386
+ const changes = this.safeList(message, 'changes', []);
387
387
  this.handleDeltas(orderbook, changes);
388
388
  }
389
389
  else {
@@ -968,7 +968,7 @@ class onetrading extends onetrading$1["default"] {
968
968
  }
969
969
  let symbol = undefined;
970
970
  const orders = this.orders;
971
- const update = this.safeValue(message, 'update', {});
971
+ const update = this.safeDict(message, 'update', {});
972
972
  const updateType = this.safeString(update, 'type');
973
973
  if (updateType === 'ORDER_REJECTED' || updateType === 'ORDER_CLOSED' || updateType === 'STOP_ORDER_TRIGGERED') {
974
974
  const orderId = this.safeString(update, 'order_id');
@@ -1063,8 +1063,8 @@ class onetrading extends onetrading$1["default"] {
1063
1063
  symbol = market['symbol'];
1064
1064
  const marketId = market['id'];
1065
1065
  const url = this.urls['api']['ws'];
1066
- const timeframes = this.safeValue(this.options, 'timeframes', {});
1067
- const timeframeId = this.safeValue(timeframes, timeframe);
1066
+ const timeframes = this.safeDict(this.options, 'timeframes', {});
1067
+ const timeframeId = this.safeDict(timeframes, timeframe);
1068
1068
  if (timeframeId === undefined) {
1069
1069
  throw new errors.NotSupported(this.id + ' this interval is not supported, please provide one of the supported timeframes');
1070
1070
  }
@@ -1076,7 +1076,7 @@ class onetrading extends onetrading$1["default"] {
1076
1076
  if (client !== undefined) {
1077
1077
  subscription = this.safeValue(client.subscriptions, subscriptionHash);
1078
1078
  if (subscription !== undefined) {
1079
- const ohlcvMarket = this.safeValue(subscription, marketId, {});
1079
+ const ohlcvMarket = this.safeDict(subscription, marketId, {});
1080
1080
  const marketSubscribed = this.safeBool(ohlcvMarket, timeframe, false);
1081
1081
  if (marketSubscribed !== true) {
1082
1082
  type = 'UPDATE_SUBSCRIPTION';
@@ -1087,7 +1087,7 @@ class onetrading extends onetrading$1["default"] {
1087
1087
  subscription = {};
1088
1088
  }
1089
1089
  }
1090
- const subscriptionMarketId = this.safeValue(subscription, marketId);
1090
+ const subscriptionMarketId = this.safeDict(subscription, marketId);
1091
1091
  if (subscriptionMarketId === undefined) {
1092
1092
  if (marketId !== undefined) {
1093
1093
  subscription[marketId] = {};
@@ -1101,7 +1101,7 @@ class onetrading extends onetrading$1["default"] {
1101
1101
  for (let i = 0; i < marketIds.length; i++) {
1102
1102
  const marketIdtimeframes = Object.keys(subscription[marketIds[i]]);
1103
1103
  for (let ii = 0; ii < marketIdtimeframes.length; ii++) {
1104
- const marketTimeframeId = this.safeValue(timeframes, timeframe);
1104
+ const marketTimeframeId = this.safeDict(timeframes, timeframe);
1105
1105
  const property = {
1106
1106
  'instrument_code': marketIds[i],
1107
1107
  'time_granularity': marketTimeframeId,
@@ -1162,8 +1162,8 @@ class onetrading extends onetrading$1["default"] {
1162
1162
  const marketId = this.safeString(message, 'instrument_code');
1163
1163
  const symbol = this.safeSymbol(marketId);
1164
1164
  const dateTime = this.safeString(message, 'time');
1165
- const timeframeId = this.safeValue(message, 'granularity');
1166
- const timeframes = this.safeValue(this.options, 'timeframes', {});
1165
+ const timeframeId = this.safeDict(message, 'granularity');
1166
+ const timeframes = this.safeDict(this.options, 'timeframes', {});
1167
1167
  const timeframe = this.findTimeframe(timeframeId, timeframes);
1168
1168
  const channel = 'ohlcv.' + symbol + '.' + timeframe;
1169
1169
  const parsed = [
@@ -1174,8 +1174,8 @@ class onetrading extends onetrading$1["default"] {
1174
1174
  this.safeNumber(message, 'close'),
1175
1175
  this.safeNumber(message, 'volume'),
1176
1176
  ];
1177
- this.ohlcvs[symbol] = this.safeValue(this.ohlcvs, symbol, {});
1178
- let stored = this.safeValue(this.safeValue(this.ohlcvs, symbol), timeframe);
1177
+ this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
1178
+ let stored = this.safeValue(this.safeDict(this.ohlcvs, symbol), timeframe);
1179
1179
  if (stored === undefined) {
1180
1180
  const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
1181
1181
  stored = new Cache.ArrayCacheByTimestamp(limit);
@@ -1239,12 +1239,12 @@ class onetrading extends onetrading$1["default"] {
1239
1239
  throw new errors.ExchangeError(this.id + ' ' + this.json(message));
1240
1240
  }
1241
1241
  handleMessage(client, message) {
1242
- const error = this.safeValue(message, 'error');
1242
+ const error = this.safeString(message, 'error');
1243
1243
  if (error !== undefined) {
1244
1244
  this.handleErrorMessage(client, message);
1245
1245
  return;
1246
1246
  }
1247
- const type = this.safeValue(message, 'type');
1247
+ const type = this.safeString(message, 'type');
1248
1248
  const handlers = {
1249
1249
  'ORDER_BOOK_UPDATE': this.handleOrderBook,
1250
1250
  'ORDER_BOOK_SNAPSHOT': this.handleOrderBook,
@@ -1357,7 +1357,7 @@ class onetrading extends onetrading$1["default"] {
1357
1357
  const client = this.client(url);
1358
1358
  const messageHash = 'authenticated';
1359
1359
  const future = client.reusableFuture('authenticated');
1360
- const authenticated = this.safeValue(client.subscriptions, messageHash);
1360
+ const authenticated = this.safeDict(client.subscriptions, messageHash);
1361
1361
  if (authenticated === undefined) {
1362
1362
  this.checkRequiredCredentials();
1363
1363
  const request = {
@@ -96,7 +96,7 @@ class p2b extends p2b$1["default"] {
96
96
  if (this.markets === undefined) {
97
97
  await this.loadMarkets();
98
98
  }
99
- const timeframes = this.safeValue(this.options, 'timeframes', {});
99
+ const timeframes = this.safeDict(this.options, 'timeframes', {});
100
100
  const channel = this.safeInteger(timeframes, timeframe);
101
101
  if (channel === undefined) {
102
102
  throw new errors.BadRequest(this.id + ' watchOHLCV cannot take a timeframe of ' + timeframe);
@@ -220,7 +220,7 @@ class p2b extends p2b$1["default"] {
220
220
  const query = this.extend(subscribe, params);
221
221
  const trades = await this.watchMultiple(url, messageHashes, query, messageHashes);
222
222
  if (this.newUpdates) {
223
- const first = this.safeValue(trades, 0);
223
+ const first = this.safeDict(trades, 0);
224
224
  const tradeSymbol = this.safeString(first, 'symbol');
225
225
  limit = trades.getLimit(tradeSymbol, limit);
226
226
  }
@@ -426,7 +426,7 @@ class p2b extends p2b$1["default"] {
426
426
  const market = this.safeMarket(marketId);
427
427
  const symbol = market['symbol'];
428
428
  const messageHash = 'orderbook::' + market['symbol'];
429
- const subscription = this.safeValue(client.subscriptions, messageHash, {});
429
+ const subscription = this.safeDict(client.subscriptions, messageHash, {});
430
430
  const limit = this.safeInteger(subscription, 'limit');
431
431
  let orderbook = this.safeValue(this.orderbooks, symbol);
432
432
  if (orderbook === undefined) {
@@ -442,7 +442,7 @@ class p2b extends p2b$1["default"] {
442
442
  }
443
443
  if (bids !== undefined) {
444
444
  for (let i = 0; i < bids.length; i++) {
445
- const bid = this.safeValue(bids, i);
445
+ const bid = this.safeList(bids, i);
446
446
  const price = this.safeNumber(bid, 0);
447
447
  const amount = this.safeNumber(bid, 1);
448
448
  const bookSide = orderbook['bids'];
@@ -451,7 +451,7 @@ class p2b extends p2b$1["default"] {
451
451
  }
452
452
  if (asks !== undefined) {
453
453
  for (let i = 0; i < asks.length; i++) {
454
- const ask = this.safeValue(asks, i);
454
+ const ask = this.safeList(asks, i);
455
455
  const price = this.safeNumber(ask, 0);
456
456
  const amount = this.safeNumber(ask, 1);
457
457
  const bookside = orderbook['asks'];
@@ -1051,7 +1051,7 @@ class pacifica extends pacifica$1["default"] {
1051
1051
  if (!(symbol in this.ohlcvs)) {
1052
1052
  this.ohlcvs[symbol] = {};
1053
1053
  }
1054
- const symbolOhlcvs = this.safeValue(this.ohlcvs, symbol, {});
1054
+ const symbolOhlcvs = this.safeDict(this.ohlcvs, symbol, {});
1055
1055
  let ohlcv = this.safeValue(symbolOhlcvs, timeframe);
1056
1056
  if (ohlcv === undefined) {
1057
1057
  const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
@@ -634,7 +634,7 @@ class paradex extends paradex$1["default"] {
634
634
  // }
635
635
  // }
636
636
  //
637
- const result = this.safeValue(message, 'result');
637
+ const result = this.safeDict(message, 'result');
638
638
  if (result !== undefined) {
639
639
  this.handleAuthenticationMessage(client, message);
640
640
  return;
@@ -371,7 +371,7 @@ class phemex extends phemex$1["default"] {
371
371
  const balance = message[i];
372
372
  const currencyId = this.safeString(balance, 'currency');
373
373
  const code = this.safeCurrencyCode(currencyId);
374
- const currency = this.safeValue(this.currencies, code, {});
374
+ const currency = this.safeDict(this.currencies, code, {});
375
375
  const scale = this.safeInteger(currency, 'valueScale', 8);
376
376
  const account = this.account();
377
377
  let used = this.safeString(balance, 'totalUsedBalanceRv');
@@ -437,7 +437,7 @@ class phemex extends phemex$1["default"] {
437
437
  stored = new Cache.ArrayCache(limit);
438
438
  this.trades[symbol] = stored;
439
439
  }
440
- const trades = this.safeValue2(message, 'trades', 'trades_p', []);
440
+ const trades = this.safeList2(message, 'trades', 'trades_p', []);
441
441
  const parsed = this.parseTrades(trades, market);
442
442
  for (let i = 0; i < parsed.length; i++) {
443
443
  stored.append(parsed[i]);
@@ -479,15 +479,15 @@ class phemex extends phemex$1["default"] {
479
479
  const marketId = this.safeString(message, 'symbol');
480
480
  const market = this.safeMarket(marketId);
481
481
  const symbol = market['symbol'];
482
- const candles = this.safeValue2(message, 'kline', 'kline_p', []);
483
- const first = this.safeValue(candles, 0, []);
482
+ const candles = this.safeList2(message, 'kline', 'kline_p', []);
483
+ const first = this.safeList(candles, 0, []);
484
484
  const interval = this.safeString(first, 1);
485
485
  const timeframe = this.findTimeframe(interval);
486
486
  if (timeframe !== undefined) {
487
487
  const messageHash = 'kline:' + timeframe + ':' + symbol;
488
488
  const ohlcvs = this.parseOHLCVs(candles, market);
489
- this.ohlcvs[symbol] = this.safeValue(this.ohlcvs, symbol, {});
490
- let stored = this.safeValue(this.safeValue(this.ohlcvs, symbol), timeframe);
489
+ this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
490
+ let stored = this.safeValue(this.safeDict(this.ohlcvs, symbol), timeframe);
491
491
  if (stored === undefined) {
492
492
  const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
493
493
  stored = new Cache.ArrayCacheByTimestamp(limit);
@@ -766,7 +766,7 @@ class phemex extends phemex$1["default"] {
766
766
  const nonce = this.safeInteger(message, 'sequence');
767
767
  const timestamp = this.safeIntegerProduct(message, 'timestamp', 0.000001);
768
768
  if (type === 'snapshot') {
769
- const book = this.safeValue2(message, 'book', 'orderbook_p', {});
769
+ const book = this.safeDict2(message, 'book', 'orderbook_p', {});
770
770
  const snapshot = this.customParseOrderBook(book, symbol, timestamp, 'bids', 'asks', 0, 1, market);
771
771
  snapshot['nonce'] = nonce;
772
772
  const orderbook = this.orderBook(snapshot, depth);
@@ -1155,8 +1155,8 @@ class phemex extends phemex$1["default"] {
1155
1155
  let trades = [];
1156
1156
  const parsedOrders = [];
1157
1157
  if (('closed' in message) || ('fills' in message) || ('open' in message)) {
1158
- const closed = this.safeValue(message, 'closed', []);
1159
- const open = this.safeValue(message, 'open', []);
1158
+ const closed = this.safeList(message, 'closed', []);
1159
+ const open = this.safeList(message, 'open', []);
1160
1160
  const orders = this.arrayConcat(open, closed);
1161
1161
  const ordersLength = orders.length;
1162
1162
  if (ordersLength === 0) {
@@ -1509,7 +1509,7 @@ class phemex extends phemex$1["default"] {
1509
1509
  return;
1510
1510
  }
1511
1511
  if (('orders' in message) || ('orders_p' in message)) {
1512
- const orders = this.safeValue2(message, 'orders', 'orders_p', {});
1512
+ const orders = this.safeDict2(message, 'orders', 'orders_p', {});
1513
1513
  this.handleOrders(client, orders);
1514
1514
  }
1515
1515
  if (('accounts' in message) || ('accounts_p' in message) || ('wallets' in message)) {
@@ -1517,7 +1517,7 @@ class phemex extends phemex$1["default"] {
1517
1517
  if ('accounts_p' in message) {
1518
1518
  type = 'perpetual';
1519
1519
  }
1520
- const accounts = this.safeValueN(message, ['accounts', 'accounts_p', 'wallets'], []);
1520
+ const accounts = this.safeListN(message, ['accounts', 'accounts_p', 'wallets'], []);
1521
1521
  this.handleBalance(type, client, accounts);
1522
1522
  }
1523
1523
  }
@@ -1531,7 +1531,7 @@ class phemex extends phemex$1["default"] {
1531
1531
  // }
1532
1532
  // }
1533
1533
  //
1534
- const result = this.safeValue(message, 'result');
1534
+ const result = this.safeDict(message, 'result');
1535
1535
  const status = this.safeString(result, 'status');
1536
1536
  const messageHash = 'authenticated';
1537
1537
  if (status === 'success') {
@@ -1552,7 +1552,7 @@ class phemex extends phemex$1["default"] {
1552
1552
  await this.authenticate();
1553
1553
  const url = this.urls['api']['ws'];
1554
1554
  const requestId = this.seconds();
1555
- const settleIsUSDT = (this.safeValue(params, 'settle', '') === 'USDT');
1555
+ const settleIsUSDT = (this.safeString(params, 'settle', '') === 'USDT');
1556
1556
  params = this.omit(params, 'settle');
1557
1557
  let channel = 'aop.subscribe';
1558
1558
  if (type === 'spot') {
@@ -360,7 +360,7 @@ class poloniex extends poloniex$1["default"] {
360
360
  if (this.markets === undefined) {
361
361
  await this.loadMarkets();
362
362
  }
363
- const timeframes = this.safeValue(this.options, 'timeframes', {});
363
+ const timeframes = this.safeDict(this.options, 'timeframes', {});
364
364
  const channel = this.safeString(timeframes, timeframe, timeframe);
365
365
  if (channel === undefined) {
366
366
  throw new errors.BadRequest(this.id + ' watchOHLCV cannot take a timeframe of ' + timeframe);
@@ -478,7 +478,7 @@ class poloniex extends poloniex$1["default"] {
478
478
  if (this.markets === undefined) {
479
479
  await this.loadMarkets();
480
480
  }
481
- const watchOrderBookOptions = this.safeValue(this.options, 'watchOrderBook');
481
+ const watchOrderBookOptions = this.safeDict(this.options, 'watchOrderBook');
482
482
  let name = this.safeString(watchOrderBookOptions, 'name', 'book_lv2');
483
483
  [name, params] = this.handleOptionAndParams(params, 'watchOrderBook', 'name', name);
484
484
  const orderbook = await this.subscribe(name, name, false, [symbol], params);
@@ -607,11 +607,11 @@ class poloniex extends poloniex$1["default"] {
607
607
  const marketId = this.safeString(data, 'symbol');
608
608
  const symbol = this.safeSymbol(marketId);
609
609
  const market = this.safeMarket(symbol);
610
- const timeframes = this.safeValue(this.options, 'timeframes', {});
610
+ const timeframes = this.safeDict(this.options, 'timeframes', {});
611
611
  const timeframe = this.findTimeframe(channel, timeframes);
612
612
  const messageHash = channel + '::' + symbol;
613
613
  const parsed = this.parseWsOHLCV(data, market);
614
- this.ohlcvs[symbol] = this.safeValue(this.ohlcvs, symbol, {});
614
+ this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
615
615
  let stored = (timeframe === undefined) ? undefined : this.safeValue(this.safeValue(this.ohlcvs, symbol), timeframe);
616
616
  if (symbol !== undefined) {
617
617
  if (stored === undefined) {
@@ -842,7 +842,7 @@ class poloniex extends poloniex$1["default"] {
842
842
  }
843
843
  const marketIds = [];
844
844
  for (let i = 0; i < data.length; i++) {
845
- const order = this.safeValue(data, i);
845
+ const order = this.safeDict(data, i);
846
846
  const marketId = this.safeString(order, 'symbol');
847
847
  const eventType = this.safeString(order, 'eventType');
848
848
  if (marketId !== undefined) {
@@ -854,8 +854,8 @@ class poloniex extends poloniex$1["default"] {
854
854
  orders.append(parsed);
855
855
  }
856
856
  else {
857
- const previousOrders = this.safeValue(orders.hashmap, symbol, {});
858
- const previousOrder = this.safeValue2(previousOrders, orderId, clientOrderId);
857
+ const previousOrders = this.safeDict(orders.hashmap, symbol, {});
858
+ const previousOrder = this.safeDict2(previousOrders, orderId, clientOrderId);
859
859
  const trade = this.parseWsTrade(order);
860
860
  this.handleMyTrades(client, trade);
861
861
  if (previousOrder === undefined) {
@@ -1107,11 +1107,11 @@ class poloniex extends poloniex$1["default"] {
1107
1107
  const symbol = market['symbol'];
1108
1108
  const name = 'book_lv2';
1109
1109
  const messageHash = name + '::' + symbol;
1110
- const subscription = this.safeValue(client.subscriptions, messageHash, {});
1110
+ const subscription = this.safeDict(client.subscriptions, messageHash, {});
1111
1111
  const limit = this.safeInteger(subscription, 'limit');
1112
1112
  const timestamp = this.safeInteger(item, 'ts');
1113
- const asks = this.safeValue(item, 'asks');
1114
- const bids = this.safeValue(item, 'bids');
1113
+ const asks = this.safeList(item, 'asks');
1114
+ const bids = this.safeList(item, 'bids');
1115
1115
  if (snapshot || update) {
1116
1116
  if (snapshot) {
1117
1117
  this.orderbooks[symbol] = this.orderBook({}, limit);
@@ -1123,7 +1123,7 @@ class poloniex extends poloniex$1["default"] {
1123
1123
  const orderbook = this.orderbooks[symbol];
1124
1124
  if (bids !== undefined) {
1125
1125
  for (let j = 0; j < bids.length; j++) {
1126
- const bid = this.safeValue(bids, j);
1126
+ const bid = this.safeList(bids, j);
1127
1127
  const price = this.safeNumber(bid, 0);
1128
1128
  const amount = this.safeNumber(bid, 1);
1129
1129
  const bidsSide = orderbook['bids'];
@@ -1132,7 +1132,7 @@ class poloniex extends poloniex$1["default"] {
1132
1132
  }
1133
1133
  if (asks !== undefined) {
1134
1134
  for (let j = 0; j < asks.length; j++) {
1135
- const ask = this.safeValue(asks, j);
1135
+ const ask = this.safeList(asks, j);
1136
1136
  const price = this.safeNumber(ask, 0);
1137
1137
  const amount = this.safeNumber(ask, 1);
1138
1138
  const asksSide = orderbook['asks'];
@@ -1166,7 +1166,7 @@ class poloniex extends poloniex$1["default"] {
1166
1166
  // ]
1167
1167
  // }
1168
1168
  //
1169
- const data = this.safeValue(message, 'data', []);
1169
+ const data = this.safeList(message, 'data', []);
1170
1170
  const messageHash = 'balances';
1171
1171
  this.balance = this.parseWsBalance(data);
1172
1172
  client.resolve(this.balance, messageHash);
@@ -1188,7 +1188,7 @@ class poloniex extends poloniex$1["default"] {
1188
1188
  // }
1189
1189
  // ]
1190
1190
  //
1191
- const firstBalance = this.safeValue(response, 0, {});
1191
+ const firstBalance = this.safeDict(response, 0, {});
1192
1192
  const timestamp = this.safeInteger(firstBalance, 'ts');
1193
1193
  const result = {
1194
1194
  'info': response,
@@ -1196,7 +1196,7 @@ class poloniex extends poloniex$1["default"] {
1196
1196
  'datetime': this.iso8601(timestamp),
1197
1197
  };
1198
1198
  for (let i = 0; i < response.length; i++) {
1199
- const balance = this.safeValue(response, i);
1199
+ const balance = this.safeDict(response, i);
1200
1200
  const currencyId = this.safeString(balance, 'currency');
1201
1201
  const code = this.safeCurrencyCode(currencyId);
1202
1202
  const newAccount = this.account();
@@ -1344,8 +1344,8 @@ class poloniex extends poloniex$1["default"] {
1344
1344
  // "conn_id": "ce3dpomvha7dha97tvp0-2xh"
1345
1345
  // }
1346
1346
  //
1347
- const data = this.safeValue(message, 'data');
1348
- const success = this.safeValue(data, 'success');
1347
+ const data = this.safeDict(message, 'data');
1348
+ const success = this.safeBool(data, 'success');
1349
1349
  const messageHash = 'authenticated';
1350
1350
  if (success === true) {
1351
1351
  client.resolve(message, messageHash);
@@ -203,7 +203,7 @@ class toobit extends toobit$1["default"] {
203
203
  };
204
204
  const trades = await this.watchMultiple(url, messageHashes, this.extend(request, params), messageHashes);
205
205
  if (this.newUpdates) {
206
- const first = this.safeValue(trades, 0);
206
+ const first = this.safeDict(trades, 0);
207
207
  const tradeSymbol = this.safeString(first, 'symbol');
208
208
  limit = trades.getLimit(tradeSymbol, limit);
209
209
  }
@@ -1194,7 +1194,7 @@ class toobit extends toobit$1["default"] {
1194
1194
  }
1195
1195
  }
1196
1196
  async keepAliveListenKey(params = {}) {
1197
- const options = this.safeValue(this.options, 'ws', {});
1197
+ const options = this.safeDict(this.options, 'ws', {});
1198
1198
  const listenKey = this.safeString(options, 'listenKey');
1199
1199
  if (listenKey === undefined) {
1200
1200
  // A network error happened: we can't renew a listen key that does not exist.
@@ -139,7 +139,7 @@ class upbit extends upbit$1["default"] {
139
139
  async watchTradesForSymbols(symbols, since = undefined, limit = undefined, params = {}) {
140
140
  const trades = await this.watchPublicMultiple(symbols, 'trade');
141
141
  if (this.newUpdates) {
142
- const first = this.safeValue(trades, 0);
142
+ const first = this.safeDict(trades, 0);
143
143
  const tradeSymbol = this.safeString(first, 'symbol');
144
144
  limit = trades.getLimit(tradeSymbol, limit);
145
145
  }
@@ -247,7 +247,7 @@ class upbit extends upbit$1["default"] {
247
247
  const marketId = this.safeString(message, 'code');
248
248
  const symbol = this.safeSymbol(marketId, undefined, '-');
249
249
  const type = this.safeString(message, 'stream_type');
250
- const options = this.safeValue(this.options, 'watchOrderBook', {});
250
+ const options = this.safeDict(this.options, 'watchOrderBook', {});
251
251
  const limit = this.safeInteger(options, 'limit', 15);
252
252
  if (type === 'SNAPSHOT') {
253
253
  this.orderbooks[symbol] = this.orderBook({}, limit);
@@ -597,8 +597,8 @@ class upbit extends upbit$1["default"] {
597
597
  this.orders = new Cache.ArrayCacheBySymbolById(limit);
598
598
  }
599
599
  const cachedOrders = this.orders;
600
- const orders = (symbol === undefined) ? {} : this.safeValue(cachedOrders.hashmap, symbol, {});
601
- const order = (orderId === undefined) ? undefined : this.safeValue(orders, orderId);
600
+ const orders = (symbol === undefined) ? {} : this.safeDict(cachedOrders.hashmap, symbol, {});
601
+ const order = (orderId === undefined) ? undefined : this.safeDict(orders, orderId);
602
602
  if (order !== undefined) {
603
603
  const fee = this.safeValue(order, 'fee');
604
604
  if (fee !== undefined) {
@@ -399,7 +399,7 @@ class weex extends weex$1["default"] {
399
399
  }
400
400
  const trades = await this.subscribePublic(messageHashes, channels, isContract, params);
401
401
  if (this.newUpdates) {
402
- const first = this.safeValue(trades, 0);
402
+ const first = this.safeDict(trades, 0);
403
403
  const tradeSymbol = this.safeString(first, 'symbol');
404
404
  limit = trades.getLimit(tradeSymbol, limit);
405
405
  }
@@ -1595,7 +1595,7 @@ class weex extends weex$1["default"] {
1595
1595
  'type': type,
1596
1596
  };
1597
1597
  const response = await this.fetchBalance(params);
1598
- this.balance[type] = this.extend(response, this.safeValue(this.balance, type, {}));
1598
+ this.balance[type] = this.extend(response, this.safeDict(this.balance, type, {}));
1599
1599
  // don't remove the future from the .futures cache
1600
1600
  if (messageHash in client.futures) {
1601
1601
  const future = client.futures[messageHash];