ccxt 4.5.17 → 4.5.19

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 (1014) hide show
  1. package/README.md +10 -6
  2. package/dist/ccxt.browser.min.js +40 -16
  3. package/dist/cjs/_virtual/index.cjs.js +1459 -9
  4. package/dist/cjs/ccxt.js +13 -2
  5. package/dist/cjs/src/abstract/alpaca.js +1 -1
  6. package/dist/cjs/src/abstract/apex.js +1 -1
  7. package/dist/cjs/src/abstract/arkham.js +1 -1
  8. package/dist/cjs/src/abstract/ascendex.js +1 -1
  9. package/dist/cjs/src/abstract/backpack.js +1 -1
  10. package/dist/cjs/src/abstract/bigone.js +1 -1
  11. package/dist/cjs/src/abstract/binance.js +1 -1
  12. package/dist/cjs/src/abstract/bingx.js +1 -1
  13. package/dist/cjs/src/abstract/bit2c.js +1 -1
  14. package/dist/cjs/src/abstract/bitbank.js +1 -1
  15. package/dist/cjs/src/abstract/bitbns.js +1 -1
  16. package/dist/cjs/src/abstract/bitfinex.js +1 -1
  17. package/dist/cjs/src/abstract/bitflyer.js +1 -1
  18. package/dist/cjs/src/abstract/bitget.js +1 -1
  19. package/dist/cjs/src/abstract/bithumb.js +1 -1
  20. package/dist/cjs/src/abstract/bitmart.js +1 -1
  21. package/dist/cjs/src/abstract/bitmex.js +1 -1
  22. package/dist/cjs/src/abstract/bitopro.js +1 -1
  23. package/dist/cjs/src/abstract/bitrue.js +1 -1
  24. package/dist/cjs/src/abstract/bitso.js +1 -1
  25. package/dist/cjs/src/abstract/bitstamp.js +1 -1
  26. package/dist/cjs/src/abstract/bitteam.js +1 -1
  27. package/dist/cjs/src/abstract/bittrade.js +1 -1
  28. package/dist/cjs/src/abstract/bitvavo.js +1 -1
  29. package/dist/cjs/src/abstract/blockchaincom.js +1 -1
  30. package/dist/cjs/src/abstract/blofin.js +1 -1
  31. package/dist/cjs/src/abstract/btcalpha.js +1 -1
  32. package/dist/cjs/src/abstract/btcbox.js +1 -1
  33. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  34. package/dist/cjs/src/abstract/btcturk.js +1 -1
  35. package/dist/cjs/src/abstract/bybit.js +1 -1
  36. package/dist/cjs/src/abstract/cex.js +1 -1
  37. package/dist/cjs/src/abstract/coinbase.js +1 -1
  38. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  39. package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
  40. package/dist/cjs/src/abstract/coincatch.js +1 -1
  41. package/dist/cjs/src/abstract/coincheck.js +1 -1
  42. package/dist/cjs/src/abstract/coinex.js +1 -1
  43. package/dist/cjs/src/abstract/coinmate.js +1 -1
  44. package/dist/cjs/src/abstract/coinmetro.js +1 -1
  45. package/dist/cjs/src/abstract/coinone.js +1 -1
  46. package/dist/cjs/src/abstract/coinsph.js +1 -1
  47. package/dist/cjs/src/abstract/coinspot.js +1 -1
  48. package/dist/cjs/src/abstract/cryptocom.js +1 -1
  49. package/dist/cjs/src/abstract/cryptomus.js +1 -1
  50. package/dist/cjs/src/abstract/deepcoin.js +11 -0
  51. package/dist/cjs/src/abstract/defx.js +1 -1
  52. package/dist/cjs/src/abstract/delta.js +1 -1
  53. package/dist/cjs/src/abstract/deribit.js +1 -1
  54. package/dist/cjs/src/abstract/derive.js +1 -1
  55. package/dist/cjs/src/abstract/digifinex.js +1 -1
  56. package/dist/cjs/src/abstract/dydx.js +11 -0
  57. package/dist/cjs/src/abstract/exmo.js +1 -1
  58. package/dist/cjs/src/abstract/foxbit.js +1 -1
  59. package/dist/cjs/src/abstract/gate.js +1 -1
  60. package/dist/cjs/src/abstract/gemini.js +1 -1
  61. package/dist/cjs/src/abstract/hashkey.js +1 -1
  62. package/dist/cjs/src/abstract/hibachi.js +1 -1
  63. package/dist/cjs/src/abstract/hitbtc.js +1 -1
  64. package/dist/cjs/src/abstract/hollaex.js +1 -1
  65. package/dist/cjs/src/abstract/htx.js +1 -1
  66. package/dist/cjs/src/abstract/hyperliquid.js +1 -1
  67. package/dist/cjs/src/abstract/independentreserve.js +1 -1
  68. package/dist/cjs/src/abstract/indodax.js +1 -1
  69. package/dist/cjs/src/abstract/kraken.js +1 -1
  70. package/dist/cjs/src/abstract/krakenfutures.js +1 -1
  71. package/dist/cjs/src/abstract/kucoin.js +1 -1
  72. package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
  73. package/dist/cjs/src/abstract/latoken.js +1 -1
  74. package/dist/cjs/src/abstract/lbank.js +1 -1
  75. package/dist/cjs/src/abstract/luno.js +1 -1
  76. package/dist/cjs/src/abstract/mercado.js +1 -1
  77. package/dist/cjs/src/abstract/mexc.js +1 -1
  78. package/dist/cjs/src/abstract/modetrade.js +1 -1
  79. package/dist/cjs/src/abstract/ndax.js +1 -1
  80. package/dist/cjs/src/abstract/novadax.js +1 -1
  81. package/dist/cjs/src/abstract/oceanex.js +1 -1
  82. package/dist/cjs/src/abstract/okx.js +1 -1
  83. package/dist/cjs/src/abstract/onetrading.js +1 -1
  84. package/dist/cjs/src/abstract/oxfun.js +1 -1
  85. package/dist/cjs/src/abstract/p2b.js +1 -1
  86. package/dist/cjs/src/abstract/paradex.js +1 -1
  87. package/dist/cjs/src/abstract/paymium.js +1 -1
  88. package/dist/cjs/src/abstract/phemex.js +1 -1
  89. package/dist/cjs/src/abstract/poloniex.js +1 -1
  90. package/dist/cjs/src/abstract/probit.js +1 -1
  91. package/dist/cjs/src/abstract/timex.js +1 -1
  92. package/dist/cjs/src/abstract/tokocrypto.js +1 -1
  93. package/dist/cjs/src/abstract/toobit.js +1 -1
  94. package/dist/cjs/src/abstract/upbit.js +1 -1
  95. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  96. package/dist/cjs/src/abstract/whitebit.js +1 -1
  97. package/dist/cjs/src/abstract/woo.js +1 -1
  98. package/dist/cjs/src/abstract/woofipro.js +1 -1
  99. package/dist/cjs/src/abstract/xt.js +1 -1
  100. package/dist/cjs/src/abstract/yobit.js +1 -1
  101. package/dist/cjs/src/abstract/zaif.js +1 -1
  102. package/dist/cjs/src/abstract/zonda.js +1 -1
  103. package/dist/cjs/src/alpaca.js +1 -1
  104. package/dist/cjs/src/apex.js +34 -16
  105. package/dist/cjs/src/arkham.js +1 -1
  106. package/dist/cjs/src/ascendex.js +1 -1
  107. package/dist/cjs/src/backpack.js +1 -1
  108. package/dist/cjs/src/base/Exchange.js +161 -4
  109. package/dist/cjs/src/base/Precise.js +0 -6
  110. package/dist/cjs/src/base/errors.js +0 -6
  111. package/dist/cjs/src/base/functions/crypto.js +1 -1
  112. package/dist/cjs/src/base/functions/encode.js +1 -1
  113. package/dist/cjs/src/base/functions/misc.js +0 -1
  114. package/dist/cjs/src/base/functions/number.js +0 -6
  115. package/dist/cjs/src/base/functions/platform.js +0 -6
  116. package/dist/cjs/src/base/functions/rsa.js +0 -1
  117. package/dist/cjs/src/base/functions/string.js +0 -6
  118. package/dist/cjs/src/base/functions/throttle.js +1 -1
  119. package/dist/cjs/src/base/functions/time.js +0 -6
  120. package/dist/cjs/src/base/functions/totp.js +0 -1
  121. package/dist/cjs/src/base/functions/type.js +0 -6
  122. package/dist/cjs/src/base/functions.js +1 -1
  123. package/dist/cjs/src/base/ws/Cache.js +0 -6
  124. package/dist/cjs/src/base/ws/Client.js +8 -8
  125. package/dist/cjs/src/base/ws/Future.js +1 -1
  126. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  127. package/dist/cjs/src/base/ws/OrderBookSide.js +0 -6
  128. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  129. package/dist/cjs/src/bequant.js +1 -1
  130. package/dist/cjs/src/bigone.js +21 -1
  131. package/dist/cjs/src/binance.js +1 -1
  132. package/dist/cjs/src/binancecoinm.js +1 -1
  133. package/dist/cjs/src/binanceus.js +32 -2
  134. package/dist/cjs/src/binanceusdm.js +1 -1
  135. package/dist/cjs/src/bingx.js +21 -1
  136. package/dist/cjs/src/bit2c.js +1 -1
  137. package/dist/cjs/src/bitbank.js +1 -1
  138. package/dist/cjs/src/bitbns.js +1 -1
  139. package/dist/cjs/src/bitfinex.js +1 -1
  140. package/dist/cjs/src/bitflyer.js +1 -1
  141. package/dist/cjs/src/bitget.js +44 -42
  142. package/dist/cjs/src/bithumb.js +1 -1
  143. package/dist/cjs/src/bitmart.js +1 -1
  144. package/dist/cjs/src/bitmex.js +1 -1
  145. package/dist/cjs/src/bitopro.js +1 -1
  146. package/dist/cjs/src/bitrue.js +1 -1
  147. package/dist/cjs/src/bitso.js +1 -1
  148. package/dist/cjs/src/bitstamp.js +1 -1
  149. package/dist/cjs/src/bitteam.js +1 -1
  150. package/dist/cjs/src/bittrade.js +1 -1
  151. package/dist/cjs/src/blockchaincom.js +1 -1
  152. package/dist/cjs/src/blofin.js +5 -2
  153. package/dist/cjs/src/btcalpha.js +1 -1
  154. package/dist/cjs/src/btcbox.js +1 -1
  155. package/dist/cjs/src/btcmarkets.js +1 -1
  156. package/dist/cjs/src/btcturk.js +1 -1
  157. package/dist/cjs/src/bybit.js +4 -1
  158. package/dist/cjs/src/cex.js +1 -1
  159. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  160. package/dist/cjs/src/coincatch.js +1 -1
  161. package/dist/cjs/src/coincheck.js +1 -1
  162. package/dist/cjs/src/coinex.js +1 -1
  163. package/dist/cjs/src/coinmate.js +1 -1
  164. package/dist/cjs/src/coinmetro.js +1 -1
  165. package/dist/cjs/src/coinone.js +1 -1
  166. package/dist/cjs/src/coinsph.js +0 -1
  167. package/dist/cjs/src/coinspot.js +1 -1
  168. package/dist/cjs/src/cryptocom.js +1 -1
  169. package/dist/cjs/src/cryptomus.js +1 -1
  170. package/dist/cjs/src/deepcoin.js +3024 -0
  171. package/dist/cjs/src/defx.js +1 -1
  172. package/dist/cjs/src/delta.js +1 -1
  173. package/dist/cjs/src/deribit.js +7 -1
  174. package/dist/cjs/src/derive.js +1 -1
  175. package/dist/cjs/src/digifinex.js +1 -1
  176. package/dist/cjs/src/dydx.js +2453 -0
  177. package/dist/cjs/src/exmo.js +1 -1
  178. package/dist/cjs/src/fmfwio.js +1 -1
  179. package/dist/cjs/src/foxbit.js +1 -1
  180. package/dist/cjs/src/gate.js +1 -1
  181. package/dist/cjs/src/gateio.js +1 -1
  182. package/dist/cjs/src/gemini.js +1 -1
  183. package/dist/cjs/src/hashkey.js +1 -1
  184. package/dist/cjs/src/hibachi.js +2 -2
  185. package/dist/cjs/src/hitbtc.js +0 -1
  186. package/dist/cjs/src/hollaex.js +1 -1
  187. package/dist/cjs/src/htx.js +1 -1
  188. package/dist/cjs/src/huobi.js +1 -1
  189. package/dist/cjs/src/hyperliquid.js +1 -1
  190. package/dist/cjs/src/independentreserve.js +1 -1
  191. package/dist/cjs/src/indodax.js +1 -1
  192. package/dist/cjs/src/kraken.js +1 -1
  193. package/dist/cjs/src/krakenfutures.js +1 -1
  194. package/dist/cjs/src/kucoin.js +712 -110
  195. package/dist/cjs/src/kucoinfutures.js +1 -1
  196. package/dist/cjs/src/latoken.js +1 -1
  197. package/dist/cjs/src/lbank.js +1 -1
  198. package/dist/cjs/src/luno.js +1 -1
  199. package/dist/cjs/src/mercado.js +1 -1
  200. package/dist/cjs/src/mexc.js +1 -1
  201. package/dist/cjs/src/modetrade.js +1 -1
  202. package/dist/cjs/src/myokx.js +1 -1
  203. package/dist/cjs/src/ndax.js +1 -1
  204. package/dist/cjs/src/novadax.js +1 -1
  205. package/dist/cjs/src/oceanex.js +1 -1
  206. package/dist/cjs/src/okx.js +1 -1
  207. package/dist/cjs/src/okxus.js +1 -1
  208. package/dist/cjs/src/onetrading.js +1 -1
  209. package/dist/cjs/src/oxfun.js +1 -1
  210. package/dist/cjs/src/p2b.js +1 -1
  211. package/dist/cjs/src/paradex.js +1 -1
  212. package/dist/cjs/src/paymium.js +1 -1
  213. package/dist/cjs/src/poloniex.js +1 -1
  214. package/dist/cjs/src/pro/alpaca.js +1 -1
  215. package/dist/cjs/src/pro/apex.js +1 -1
  216. package/dist/cjs/src/pro/arkham.js +1 -1
  217. package/dist/cjs/src/pro/ascendex.js +3 -3
  218. package/dist/cjs/src/pro/backpack.js +1 -1
  219. package/dist/cjs/src/pro/bequant.js +1 -1
  220. package/dist/cjs/src/pro/binance.js +99 -87
  221. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  222. package/dist/cjs/src/pro/binanceus.js +20 -1
  223. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  224. package/dist/cjs/src/pro/bingx.js +1 -1
  225. package/dist/cjs/src/pro/bitfinex.js +1 -1
  226. package/dist/cjs/src/pro/bitget.js +1 -1
  227. package/dist/cjs/src/pro/bithumb.js +1 -1
  228. package/dist/cjs/src/pro/bitmart.js +1 -1
  229. package/dist/cjs/src/pro/bitmex.js +1 -1
  230. package/dist/cjs/src/pro/bitrue.js +1 -1
  231. package/dist/cjs/src/pro/bitstamp.js +1 -1
  232. package/dist/cjs/src/pro/bitvavo.js +1 -1
  233. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  234. package/dist/cjs/src/pro/blofin.js +12 -3
  235. package/dist/cjs/src/pro/bybit.js +1 -1
  236. package/dist/cjs/src/pro/cex.js +1 -1
  237. package/dist/cjs/src/pro/coinbase.js +1 -1
  238. package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
  239. package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
  240. package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
  241. package/dist/cjs/src/pro/coincatch.js +1 -1
  242. package/dist/cjs/src/pro/coincheck.js +1 -1
  243. package/dist/cjs/src/pro/coinex.js +1 -1
  244. package/dist/cjs/src/pro/coinone.js +1 -1
  245. package/dist/cjs/src/pro/cryptocom.js +1 -1
  246. package/dist/cjs/src/pro/deepcoin.js +1225 -0
  247. package/dist/cjs/src/pro/defx.js +1 -1
  248. package/dist/cjs/src/pro/deribit.js +1 -1
  249. package/dist/cjs/src/pro/dydx.js +418 -0
  250. package/dist/cjs/src/pro/exmo.js +1 -1
  251. package/dist/cjs/src/pro/gate.js +1 -1
  252. package/dist/cjs/src/pro/gateio.js +1 -1
  253. package/dist/cjs/src/pro/gemini.js +1 -1
  254. package/dist/cjs/src/pro/hashkey.js +1 -1
  255. package/dist/cjs/src/pro/hitbtc.js +1 -1
  256. package/dist/cjs/src/pro/hollaex.js +1 -1
  257. package/dist/cjs/src/pro/htx.js +1 -1
  258. package/dist/cjs/src/pro/huobi.js +1 -1
  259. package/dist/cjs/src/pro/hyperliquid.js +1 -1
  260. package/dist/cjs/src/pro/independentreserve.js +1 -1
  261. package/dist/cjs/src/pro/kraken.js +10 -5
  262. package/dist/cjs/src/pro/krakenfutures.js +1 -1
  263. package/dist/cjs/src/pro/kucoin.js +1 -1
  264. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  265. package/dist/cjs/src/pro/lbank.js +0 -1
  266. package/dist/cjs/src/pro/luno.js +1 -1
  267. package/dist/cjs/src/pro/mexc.js +1 -1
  268. package/dist/cjs/src/pro/myokx.js +1 -1
  269. package/dist/cjs/src/pro/ndax.js +1 -1
  270. package/dist/cjs/src/pro/okx.js +1 -1
  271. package/dist/cjs/src/pro/okxus.js +1 -1
  272. package/dist/cjs/src/pro/onetrading.js +1 -1
  273. package/dist/cjs/src/pro/oxfun.js +1 -1
  274. package/dist/cjs/src/pro/p2b.js +1 -1
  275. package/dist/cjs/src/pro/paradex.js +1 -1
  276. package/dist/cjs/src/pro/phemex.js +1 -1
  277. package/dist/cjs/src/pro/poloniex.js +1 -1
  278. package/dist/cjs/src/pro/probit.js +1 -1
  279. package/dist/cjs/src/pro/toobit.js +1 -1
  280. package/dist/cjs/src/pro/upbit.js +1 -1
  281. package/dist/cjs/src/pro/whitebit.js +1 -1
  282. package/dist/cjs/src/pro/xt.js +218 -5
  283. package/dist/cjs/src/probit.js +1 -1
  284. package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +2 -0
  285. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +55 -0
  286. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +55 -0
  287. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +47 -0
  288. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +342 -0
  289. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +716 -0
  290. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +59 -0
  291. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +44 -0
  292. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +379 -0
  293. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +71 -0
  294. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +210 -0
  295. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +194 -0
  296. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +48 -0
  297. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +56 -0
  298. package/dist/cjs/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +55 -0
  299. package/dist/cjs/src/static_dependencies/dydx-v4-client/helpers.js +37 -0
  300. package/dist/cjs/src/static_dependencies/dydx-v4-client/long/index.cjs.js +9 -0
  301. package/dist/cjs/src/static_dependencies/dydx-v4-client/onboarding.js +58 -0
  302. package/dist/cjs/src/static_dependencies/dydx-v4-client/registry.js +38 -0
  303. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +0 -6
  304. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  305. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  306. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +0 -1
  307. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +0 -1
  308. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +0 -1
  309. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +0 -1
  310. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +0 -1
  311. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -1
  312. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +0 -1
  313. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +0 -1
  314. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +0 -1
  315. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +0 -1
  316. package/dist/cjs/src/static_dependencies/ethers/fragments.js +0 -6
  317. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  318. package/dist/cjs/src/static_dependencies/ethers/index.js +10 -1
  319. package/dist/cjs/src/static_dependencies/ethers/interface.js +0 -6
  320. package/dist/cjs/src/static_dependencies/ethers/typed.js +0 -6
  321. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +13 -1
  322. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +6 -1
  323. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +9 -1
  324. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +0 -6
  325. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  326. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +7 -1
  327. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +5 -1
  328. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +0 -6
  329. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +8 -1
  330. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  331. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -1
  332. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -1
  333. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  334. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  335. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  336. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  337. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -1
  338. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  339. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  340. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  341. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  342. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  343. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  344. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  345. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +0 -6
  346. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  347. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  348. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  349. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -1
  350. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  351. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  352. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  353. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  354. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  355. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  356. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  357. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  358. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +0 -6
  359. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +0 -1
  360. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +0 -6
  361. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +0 -6
  362. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +0 -1
  363. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +0 -1
  364. package/dist/cjs/src/static_dependencies/noble-hashes/pbkdf2.js +68 -0
  365. package/dist/cjs/src/static_dependencies/noble-hashes/ripemd160.js +107 -0
  366. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +0 -1
  367. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +0 -1
  368. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +0 -1
  369. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +0 -1
  370. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +51 -2
  371. package/dist/cjs/src/static_dependencies/node-fetch/body.js +5 -1
  372. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +0 -1
  373. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +0 -6
  374. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -1
  375. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +5 -1
  376. package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -1
  377. package/dist/cjs/src/static_dependencies/node-fetch/request.js +7 -1
  378. package/dist/cjs/src/static_dependencies/node-fetch/response.js +5 -1
  379. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  380. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  381. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +0 -6
  382. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +0 -1
  383. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +0 -1
  384. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -1
  385. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -1
  386. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  387. package/dist/cjs/src/static_dependencies/qs/formats.js +0 -6
  388. package/dist/cjs/src/static_dependencies/qs/index.js +0 -1
  389. package/dist/cjs/src/static_dependencies/qs/parse.js +0 -1
  390. package/dist/cjs/src/static_dependencies/qs/stringify.js +0 -1
  391. package/dist/cjs/src/static_dependencies/qs/utils.js +0 -6
  392. package/dist/cjs/src/static_dependencies/scure-base/index.js +29 -6
  393. package/dist/cjs/src/static_dependencies/scure-bip32/index.js +296 -0
  394. package/dist/cjs/src/static_dependencies/scure-bip39/index.js +97 -0
  395. package/dist/cjs/src/static_dependencies/scure-bip39/wordlists/english.js +2054 -0
  396. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  397. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  398. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +0 -6
  399. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  400. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  401. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +0 -6
  402. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +0 -6
  403. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +0 -6
  404. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  405. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  406. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  407. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -1
  408. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -1
  409. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  410. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  411. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  412. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -1
  413. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  414. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -1
  415. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -1
  416. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  417. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -1
  418. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -1
  419. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -1
  420. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  421. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +4 -1
  422. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +0 -1
  423. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +3 -1
  424. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +0 -1
  425. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +0 -1
  426. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +0 -1
  427. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +0 -1
  428. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  429. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +0 -6
  430. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +1 -5
  431. package/dist/cjs/src/timex.js +0 -1
  432. package/dist/cjs/src/tokocrypto.js +1 -1
  433. package/dist/cjs/src/toobit.js +3 -2
  434. package/dist/cjs/src/upbit.js +1 -1
  435. package/dist/cjs/src/wavesexchange.js +1 -1
  436. package/dist/cjs/src/whitebit.js +1 -1
  437. package/dist/cjs/src/woo.js +1 -1
  438. package/dist/cjs/src/woofipro.js +1 -1
  439. package/dist/cjs/src/xt.js +1 -1
  440. package/dist/cjs/src/yobit.js +1 -1
  441. package/dist/cjs/src/zaif.js +1 -1
  442. package/dist/cjs/src/zonda.js +1 -1
  443. package/js/ccxt.d.ts +14 -2
  444. package/js/ccxt.js +10 -8
  445. package/js/src/abstract/alpaca.js +0 -6
  446. package/js/src/abstract/apex.js +0 -6
  447. package/js/src/abstract/arkham.js +0 -6
  448. package/js/src/abstract/ascendex.js +0 -6
  449. package/js/src/abstract/backpack.js +0 -6
  450. package/js/src/abstract/bequant.js +0 -6
  451. package/js/src/abstract/bigone.js +0 -6
  452. package/js/src/abstract/binance.js +0 -6
  453. package/js/src/abstract/binancecoinm.js +0 -6
  454. package/js/src/abstract/binanceus.js +0 -6
  455. package/js/src/abstract/binanceusdm.js +0 -6
  456. package/js/src/abstract/bingx.js +0 -6
  457. package/js/src/abstract/bit2c.js +0 -6
  458. package/js/src/abstract/bitbank.js +0 -6
  459. package/js/src/abstract/bitbns.js +0 -6
  460. package/js/src/abstract/bitfinex.js +0 -6
  461. package/js/src/abstract/bitflyer.js +0 -6
  462. package/js/src/abstract/bitget.d.ts +1 -0
  463. package/js/src/abstract/bitget.js +0 -6
  464. package/js/src/abstract/bithumb.js +0 -6
  465. package/js/src/abstract/bitmart.js +0 -6
  466. package/js/src/abstract/bitmex.js +0 -6
  467. package/js/src/abstract/bitopro.js +0 -6
  468. package/js/src/abstract/bitrue.js +0 -6
  469. package/js/src/abstract/bitso.js +0 -6
  470. package/js/src/abstract/bitstamp.js +0 -6
  471. package/js/src/abstract/bitteam.js +0 -6
  472. package/js/src/abstract/bittrade.js +0 -6
  473. package/js/src/abstract/bitvavo.js +0 -6
  474. package/js/src/abstract/blockchaincom.js +0 -6
  475. package/js/src/abstract/blofin.js +0 -6
  476. package/js/src/abstract/btcalpha.js +0 -6
  477. package/js/src/abstract/btcbox.js +0 -6
  478. package/js/src/abstract/btcmarkets.js +0 -6
  479. package/js/src/abstract/btcturk.js +0 -6
  480. package/js/src/abstract/bybit.d.ts +3 -0
  481. package/js/src/abstract/bybit.js +0 -6
  482. package/js/src/abstract/cex.js +0 -6
  483. package/js/src/abstract/coinbase.js +0 -6
  484. package/js/src/abstract/coinbaseadvanced.js +0 -6
  485. package/js/src/abstract/coinbaseexchange.js +0 -6
  486. package/js/src/abstract/coinbaseinternational.js +0 -6
  487. package/js/src/abstract/coincatch.js +0 -6
  488. package/js/src/abstract/coincheck.js +0 -6
  489. package/js/src/abstract/coinex.js +0 -6
  490. package/js/src/abstract/coinmate.js +0 -6
  491. package/js/src/abstract/coinmetro.js +0 -6
  492. package/js/src/abstract/coinone.js +0 -6
  493. package/js/src/abstract/coinsph.js +0 -6
  494. package/js/src/abstract/coinspot.js +0 -6
  495. package/js/src/abstract/cryptocom.js +0 -6
  496. package/js/src/abstract/cryptomus.js +0 -6
  497. package/js/src/abstract/deepcoin.d.ts +60 -0
  498. package/js/src/abstract/deepcoin.js +5 -0
  499. package/js/src/abstract/defx.js +0 -6
  500. package/js/src/abstract/delta.js +0 -6
  501. package/js/src/abstract/deribit.js +0 -6
  502. package/js/src/abstract/derive.js +0 -6
  503. package/js/src/abstract/digifinex.js +0 -6
  504. package/js/src/abstract/dydx.d.ts +61 -0
  505. package/js/src/abstract/dydx.js +5 -0
  506. package/js/src/abstract/exmo.js +0 -6
  507. package/js/src/abstract/fmfwio.js +0 -6
  508. package/js/src/abstract/foxbit.js +0 -6
  509. package/js/src/abstract/gate.js +0 -6
  510. package/js/src/abstract/gateio.js +0 -6
  511. package/js/src/abstract/gemini.js +0 -6
  512. package/js/src/abstract/hashkey.js +0 -6
  513. package/js/src/abstract/hibachi.js +0 -6
  514. package/js/src/abstract/hitbtc.js +0 -6
  515. package/js/src/abstract/hollaex.js +0 -6
  516. package/js/src/abstract/htx.js +0 -6
  517. package/js/src/abstract/huobi.js +0 -6
  518. package/js/src/abstract/hyperliquid.js +0 -6
  519. package/js/src/abstract/independentreserve.js +0 -6
  520. package/js/src/abstract/indodax.js +0 -6
  521. package/js/src/abstract/kraken.js +0 -6
  522. package/js/src/abstract/krakenfutures.js +0 -6
  523. package/js/src/abstract/kucoin.d.ts +1 -1
  524. package/js/src/abstract/kucoin.js +0 -6
  525. package/js/src/abstract/kucoinfutures.d.ts +1 -1
  526. package/js/src/abstract/kucoinfutures.js +0 -6
  527. package/js/src/abstract/latoken.js +0 -6
  528. package/js/src/abstract/lbank.js +0 -6
  529. package/js/src/abstract/luno.js +0 -6
  530. package/js/src/abstract/mercado.js +0 -6
  531. package/js/src/abstract/mexc.js +0 -6
  532. package/js/src/abstract/modetrade.js +0 -6
  533. package/js/src/abstract/myokx.js +0 -6
  534. package/js/src/abstract/ndax.js +0 -6
  535. package/js/src/abstract/novadax.js +0 -6
  536. package/js/src/abstract/oceanex.js +0 -6
  537. package/js/src/abstract/okx.js +0 -6
  538. package/js/src/abstract/okxus.js +0 -6
  539. package/js/src/abstract/onetrading.js +0 -6
  540. package/js/src/abstract/oxfun.js +0 -6
  541. package/js/src/abstract/p2b.js +0 -6
  542. package/js/src/abstract/paradex.js +0 -6
  543. package/js/src/abstract/paymium.js +0 -6
  544. package/js/src/abstract/phemex.js +0 -6
  545. package/js/src/abstract/poloniex.js +0 -6
  546. package/js/src/abstract/probit.js +0 -6
  547. package/js/src/abstract/timex.js +0 -6
  548. package/js/src/abstract/tokocrypto.js +0 -6
  549. package/js/src/abstract/toobit.js +0 -6
  550. package/js/src/abstract/upbit.js +0 -6
  551. package/js/src/abstract/wavesexchange.js +0 -6
  552. package/js/src/abstract/whitebit.js +0 -6
  553. package/js/src/abstract/woo.js +0 -6
  554. package/js/src/abstract/woofipro.js +0 -6
  555. package/js/src/abstract/xt.js +0 -6
  556. package/js/src/abstract/yobit.js +0 -6
  557. package/js/src/abstract/zaif.js +0 -6
  558. package/js/src/abstract/zonda.js +0 -6
  559. package/js/src/alpaca.js +0 -6
  560. package/js/src/apex.d.ts +2 -0
  561. package/js/src/apex.js +33 -21
  562. package/js/src/arkham.js +0 -6
  563. package/js/src/ascendex.js +0 -6
  564. package/js/src/backpack.js +0 -6
  565. package/js/src/base/Exchange.d.ts +7 -0
  566. package/js/src/base/Exchange.js +160 -10
  567. package/js/src/base/Precise.js +0 -6
  568. package/js/src/base/errorHierarchy.js +0 -6
  569. package/js/src/base/errors.js +0 -6
  570. package/js/src/base/functions/crypto.js +0 -6
  571. package/js/src/base/functions/encode.js +0 -6
  572. package/js/src/base/functions/generic.js +0 -6
  573. package/js/src/base/functions/misc.js +0 -6
  574. package/js/src/base/functions/number.js +0 -6
  575. package/js/src/base/functions/platform.js +0 -6
  576. package/js/src/base/functions/rsa.js +0 -6
  577. package/js/src/base/functions/string.js +0 -6
  578. package/js/src/base/functions/throttle.js +0 -6
  579. package/js/src/base/functions/time.js +0 -6
  580. package/js/src/base/functions/totp.js +0 -6
  581. package/js/src/base/functions/type.js +0 -6
  582. package/js/src/base/functions.js +0 -6
  583. package/js/src/base/types.js +0 -6
  584. package/js/src/base/ws/Cache.js +0 -6
  585. package/js/src/base/ws/Client.js +8 -13
  586. package/js/src/base/ws/Future.js +0 -6
  587. package/js/src/base/ws/OrderBook.js +0 -6
  588. package/js/src/base/ws/OrderBookSide.js +0 -6
  589. package/js/src/base/ws/WsClient.js +0 -6
  590. package/js/src/base/ws/functions.js +0 -6
  591. package/js/src/bequant.js +0 -6
  592. package/js/src/bigone.js +20 -6
  593. package/js/src/binance.js +0 -6
  594. package/js/src/binancecoinm.js +0 -6
  595. package/js/src/binanceus.js +31 -7
  596. package/js/src/binanceusdm.js +0 -6
  597. package/js/src/bingx.js +20 -6
  598. package/js/src/bit2c.js +0 -6
  599. package/js/src/bitbank.js +0 -6
  600. package/js/src/bitbns.js +0 -6
  601. package/js/src/bitfinex.js +0 -6
  602. package/js/src/bitflyer.js +0 -6
  603. package/js/src/bitget.d.ts +3 -3
  604. package/js/src/bitget.js +43 -47
  605. package/js/src/bithumb.js +0 -6
  606. package/js/src/bitmart.js +0 -6
  607. package/js/src/bitmex.js +0 -6
  608. package/js/src/bitopro.js +0 -6
  609. package/js/src/bitrue.js +0 -6
  610. package/js/src/bitso.js +0 -6
  611. package/js/src/bitstamp.js +0 -6
  612. package/js/src/bitteam.js +0 -6
  613. package/js/src/bittrade.js +0 -6
  614. package/js/src/bitvavo.js +0 -6
  615. package/js/src/blockchaincom.js +0 -6
  616. package/js/src/blofin.js +4 -7
  617. package/js/src/btcalpha.js +0 -6
  618. package/js/src/btcbox.js +0 -6
  619. package/js/src/btcmarkets.js +0 -6
  620. package/js/src/btcturk.js +0 -6
  621. package/js/src/bybit.js +3 -6
  622. package/js/src/cex.js +0 -6
  623. package/js/src/coinbase.js +0 -6
  624. package/js/src/coinbaseadvanced.js +0 -6
  625. package/js/src/coinbaseexchange.js +0 -6
  626. package/js/src/coinbaseinternational.js +0 -6
  627. package/js/src/coincatch.js +0 -6
  628. package/js/src/coincheck.js +0 -6
  629. package/js/src/coinex.js +0 -6
  630. package/js/src/coinmate.js +0 -6
  631. package/js/src/coinmetro.js +0 -6
  632. package/js/src/coinone.js +0 -6
  633. package/js/src/coinsph.js +0 -6
  634. package/js/src/coinspot.js +0 -6
  635. package/js/src/cryptocom.js +0 -6
  636. package/js/src/cryptomus.js +0 -6
  637. package/js/src/deepcoin.d.ts +498 -0
  638. package/js/src/deepcoin.js +3016 -0
  639. package/js/src/defx.js +0 -6
  640. package/js/src/delta.js +0 -6
  641. package/js/src/deribit.js +6 -6
  642. package/js/src/derive.js +0 -6
  643. package/js/src/digifinex.js +0 -6
  644. package/js/src/dydx.d.ts +364 -0
  645. package/js/src/dydx.js +2446 -0
  646. package/js/src/exmo.js +0 -6
  647. package/js/src/fmfwio.js +0 -6
  648. package/js/src/foxbit.js +0 -6
  649. package/js/src/gate.js +0 -6
  650. package/js/src/gateio.js +0 -6
  651. package/js/src/gemini.js +0 -6
  652. package/js/src/hashkey.js +0 -6
  653. package/js/src/hibachi.js +1 -7
  654. package/js/src/hitbtc.js +0 -6
  655. package/js/src/hollaex.js +0 -6
  656. package/js/src/htx.js +0 -6
  657. package/js/src/huobi.js +0 -6
  658. package/js/src/hyperliquid.js +0 -6
  659. package/js/src/independentreserve.js +0 -6
  660. package/js/src/indodax.js +0 -6
  661. package/js/src/kraken.js +0 -6
  662. package/js/src/krakenfutures.js +0 -6
  663. package/js/src/kucoin.d.ts +48 -1
  664. package/js/src/kucoin.js +711 -115
  665. package/js/src/kucoinfutures.js +0 -6
  666. package/js/src/latoken.js +0 -6
  667. package/js/src/lbank.js +0 -6
  668. package/js/src/luno.js +0 -6
  669. package/js/src/mercado.js +0 -6
  670. package/js/src/mexc.js +0 -6
  671. package/js/src/modetrade.js +0 -6
  672. package/js/src/myokx.js +0 -6
  673. package/js/src/ndax.js +0 -6
  674. package/js/src/novadax.js +0 -6
  675. package/js/src/oceanex.js +0 -6
  676. package/js/src/okx.js +0 -6
  677. package/js/src/okxus.js +0 -6
  678. package/js/src/onetrading.js +0 -6
  679. package/js/src/oxfun.js +0 -6
  680. package/js/src/p2b.js +0 -6
  681. package/js/src/paradex.js +0 -6
  682. package/js/src/paymium.js +0 -6
  683. package/js/src/phemex.js +0 -6
  684. package/js/src/poloniex.js +0 -6
  685. package/js/src/pro/alpaca.js +0 -6
  686. package/js/src/pro/apex.js +0 -6
  687. package/js/src/pro/arkham.js +0 -6
  688. package/js/src/pro/ascendex.d.ts +1 -1
  689. package/js/src/pro/ascendex.js +2 -8
  690. package/js/src/pro/backpack.js +0 -6
  691. package/js/src/pro/bequant.js +0 -6
  692. package/js/src/pro/binance.d.ts +37 -3
  693. package/js/src/pro/binance.js +99 -96
  694. package/js/src/pro/binancecoinm.js +0 -6
  695. package/js/src/pro/binanceus.js +19 -6
  696. package/js/src/pro/binanceusdm.js +0 -6
  697. package/js/src/pro/bingx.js +0 -6
  698. package/js/src/pro/bitfinex.js +0 -6
  699. package/js/src/pro/bitget.js +0 -6
  700. package/js/src/pro/bithumb.js +0 -6
  701. package/js/src/pro/bitmart.js +0 -6
  702. package/js/src/pro/bitmex.js +0 -6
  703. package/js/src/pro/bitopro.js +0 -6
  704. package/js/src/pro/bitrue.js +0 -6
  705. package/js/src/pro/bitstamp.js +0 -6
  706. package/js/src/pro/bittrade.js +0 -6
  707. package/js/src/pro/bitvavo.js +0 -6
  708. package/js/src/pro/blockchaincom.js +0 -6
  709. package/js/src/pro/blofin.d.ts +5 -0
  710. package/js/src/pro/blofin.js +11 -8
  711. package/js/src/pro/bybit.js +0 -6
  712. package/js/src/pro/cex.js +0 -6
  713. package/js/src/pro/coinbase.js +0 -6
  714. package/js/src/pro/coinbaseadvanced.js +0 -6
  715. package/js/src/pro/coinbaseexchange.js +0 -6
  716. package/js/src/pro/coinbaseinternational.js +0 -6
  717. package/js/src/pro/coincatch.js +0 -6
  718. package/js/src/pro/coincheck.js +0 -6
  719. package/js/src/pro/coinex.js +0 -6
  720. package/js/src/pro/coinone.js +0 -6
  721. package/js/src/pro/cryptocom.js +0 -6
  722. package/js/src/pro/deepcoin.d.ts +169 -0
  723. package/js/src/pro/deepcoin.js +1218 -0
  724. package/js/src/pro/defx.js +0 -6
  725. package/js/src/pro/deribit.js +0 -6
  726. package/js/src/pro/derive.js +0 -6
  727. package/js/src/pro/dydx.d.ts +81 -0
  728. package/js/src/pro/dydx.js +411 -0
  729. package/js/src/pro/exmo.js +0 -6
  730. package/js/src/pro/gate.js +0 -6
  731. package/js/src/pro/gateio.js +0 -6
  732. package/js/src/pro/gemini.js +0 -6
  733. package/js/src/pro/hashkey.js +0 -6
  734. package/js/src/pro/hitbtc.js +0 -6
  735. package/js/src/pro/hollaex.js +0 -6
  736. package/js/src/pro/htx.js +0 -6
  737. package/js/src/pro/huobi.js +0 -6
  738. package/js/src/pro/hyperliquid.js +0 -6
  739. package/js/src/pro/independentreserve.js +0 -6
  740. package/js/src/pro/kraken.js +9 -10
  741. package/js/src/pro/krakenfutures.js +0 -6
  742. package/js/src/pro/kucoin.js +0 -6
  743. package/js/src/pro/kucoinfutures.js +0 -6
  744. package/js/src/pro/lbank.js +0 -6
  745. package/js/src/pro/luno.js +0 -6
  746. package/js/src/pro/mexc.js +0 -6
  747. package/js/src/pro/modetrade.js +0 -6
  748. package/js/src/pro/myokx.js +0 -6
  749. package/js/src/pro/ndax.js +0 -6
  750. package/js/src/pro/okx.js +0 -6
  751. package/js/src/pro/okxus.js +0 -6
  752. package/js/src/pro/onetrading.js +0 -6
  753. package/js/src/pro/oxfun.js +0 -6
  754. package/js/src/pro/p2b.js +0 -6
  755. package/js/src/pro/paradex.js +0 -6
  756. package/js/src/pro/phemex.js +0 -6
  757. package/js/src/pro/poloniex.js +0 -6
  758. package/js/src/pro/probit.js +0 -6
  759. package/js/src/pro/toobit.js +0 -6
  760. package/js/src/pro/upbit.js +0 -6
  761. package/js/src/pro/whitebit.js +0 -6
  762. package/js/src/pro/woo.js +0 -6
  763. package/js/src/pro/woofipro.js +0 -6
  764. package/js/src/pro/xt.d.ts +85 -2
  765. package/js/src/pro/xt.js +217 -10
  766. package/js/src/probit.js +0 -6
  767. package/js/src/protobuf/mexc/compiled.cjs +0 -6
  768. package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.d.ts +90 -0
  769. package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +157 -0
  770. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.d.ts +26 -0
  771. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.js +45 -0
  772. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.d.ts +48 -0
  773. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +79 -0
  774. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.d.ts +40 -0
  775. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +71 -0
  776. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.d.ts +162 -0
  777. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +323 -0
  778. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.d.ts +460 -0
  779. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +692 -0
  780. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.d.ts +127 -0
  781. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +280 -0
  782. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.d.ts +66 -0
  783. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.js +103 -0
  784. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.d.ts +127 -0
  785. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +251 -0
  786. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.d.ts +48 -0
  787. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.js +87 -0
  788. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.d.ts +23 -0
  789. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.js +37 -0
  790. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.d.ts +92 -0
  791. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.js +158 -0
  792. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.d.ts +124 -0
  793. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.js +190 -0
  794. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.d.ts +159 -0
  795. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.js +318 -0
  796. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.d.ts +546 -0
  797. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +866 -0
  798. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.d.ts +84 -0
  799. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +175 -0
  800. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.d.ts +397 -0
  801. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +751 -0
  802. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.d.ts +120 -0
  803. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +240 -0
  804. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.d.ts +79 -0
  805. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +141 -0
  806. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.d.ts +32 -0
  807. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.js +53 -0
  808. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.d.ts +34 -0
  809. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.js +60 -0
  810. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.d.ts +62 -0
  811. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +105 -0
  812. package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.d.ts +207 -0
  813. package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +44 -0
  814. package/js/src/static_dependencies/dydx-v4-client/helpers.d.ts +82 -0
  815. package/js/src/static_dependencies/dydx-v4-client/helpers.js +144 -0
  816. package/js/src/static_dependencies/dydx-v4-client/long/index.cjs +1467 -0
  817. package/js/src/static_dependencies/dydx-v4-client/long/index.d.cts +2 -0
  818. package/js/src/static_dependencies/dydx-v4-client/onboarding.d.ts +35 -0
  819. package/js/src/static_dependencies/dydx-v4-client/onboarding.js +50 -0
  820. package/js/src/static_dependencies/dydx-v4-client/registry.d.ts +7 -0
  821. package/js/src/static_dependencies/dydx-v4-client/registry.js +30 -0
  822. package/js/src/static_dependencies/ethers/abi-coder.js +0 -6
  823. package/js/src/static_dependencies/ethers/address/address.js +0 -6
  824. package/js/src/static_dependencies/ethers/address/checks.js +0 -6
  825. package/js/src/static_dependencies/ethers/address/contract-address.js +0 -6
  826. package/js/src/static_dependencies/ethers/address/index.js +0 -6
  827. package/js/src/static_dependencies/ethers/bytes32.js +0 -6
  828. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  829. package/js/src/static_dependencies/ethers/coders/address.js +0 -6
  830. package/js/src/static_dependencies/ethers/coders/anonymous.js +0 -6
  831. package/js/src/static_dependencies/ethers/coders/array.js +0 -6
  832. package/js/src/static_dependencies/ethers/coders/boolean.js +0 -6
  833. package/js/src/static_dependencies/ethers/coders/bytes.js +0 -6
  834. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -6
  835. package/js/src/static_dependencies/ethers/coders/null.js +0 -6
  836. package/js/src/static_dependencies/ethers/coders/number.js +0 -6
  837. package/js/src/static_dependencies/ethers/coders/string.js +0 -6
  838. package/js/src/static_dependencies/ethers/coders/tuple.js +0 -6
  839. package/js/src/static_dependencies/ethers/fragments.js +0 -6
  840. package/js/src/static_dependencies/ethers/hash/index.js +0 -6
  841. package/js/src/static_dependencies/ethers/hash/solidity.js +0 -6
  842. package/js/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  843. package/js/src/static_dependencies/ethers/index.js +0 -6
  844. package/js/src/static_dependencies/ethers/interface.js +0 -6
  845. package/js/src/static_dependencies/ethers/typed.js +0 -6
  846. package/js/src/static_dependencies/ethers/utils/base58.js +0 -6
  847. package/js/src/static_dependencies/ethers/utils/base64-browser.js +0 -6
  848. package/js/src/static_dependencies/ethers/utils/base64.js +0 -6
  849. package/js/src/static_dependencies/ethers/utils/data.js +0 -6
  850. package/js/src/static_dependencies/ethers/utils/errors.js +0 -6
  851. package/js/src/static_dependencies/ethers/utils/events.js +0 -6
  852. package/js/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  853. package/js/src/static_dependencies/ethers/utils/index.js +0 -6
  854. package/js/src/static_dependencies/ethers/utils/maths.js +0 -6
  855. package/js/src/static_dependencies/ethers/utils/properties.js +0 -6
  856. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +0 -6
  857. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +0 -6
  858. package/js/src/static_dependencies/ethers/utils/rlp.js +0 -6
  859. package/js/src/static_dependencies/ethers/utils/units.js +0 -6
  860. package/js/src/static_dependencies/ethers/utils/utf8.js +0 -6
  861. package/js/src/static_dependencies/ethers/utils/uuid.js +0 -6
  862. package/js/src/static_dependencies/fflake/browser.js +0 -6
  863. package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -6
  864. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -6
  865. package/js/src/static_dependencies/jsencrypt/index.js +0 -6
  866. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -6
  867. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  868. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  869. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  870. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +0 -6
  871. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -6
  872. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -6
  873. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  874. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -6
  875. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -6
  876. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  877. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -6
  878. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  879. package/js/src/static_dependencies/messagepack/msgpack.js +0 -6
  880. package/js/src/static_dependencies/noble-curves/_shortw_utils.js +0 -6
  881. package/js/src/static_dependencies/noble-curves/abstract/curve.js +0 -6
  882. package/js/src/static_dependencies/noble-curves/abstract/edwards.js +0 -6
  883. package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -6
  884. package/js/src/static_dependencies/noble-curves/abstract/modular.js +0 -6
  885. package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +0 -6
  886. package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +0 -6
  887. package/js/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  888. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +0 -6
  889. package/js/src/static_dependencies/noble-curves/bn.js +0 -6
  890. package/js/src/static_dependencies/noble-curves/ed25519.js +0 -6
  891. package/js/src/static_dependencies/noble-curves/ed448.js +0 -6
  892. package/js/src/static_dependencies/noble-curves/index.js +0 -6
  893. package/js/src/static_dependencies/noble-curves/jubjub.js +0 -6
  894. package/js/src/static_dependencies/noble-curves/p256.js +0 -6
  895. package/js/src/static_dependencies/noble-curves/p384.js +0 -6
  896. package/js/src/static_dependencies/noble-curves/p521.js +0 -6
  897. package/js/src/static_dependencies/noble-curves/pasta.js +0 -6
  898. package/js/src/static_dependencies/noble-curves/secp256k1.js +0 -6
  899. package/js/src/static_dependencies/noble-hashes/_assert.js +0 -6
  900. package/js/src/static_dependencies/noble-hashes/_blake2.js +0 -6
  901. package/js/src/static_dependencies/noble-hashes/_sha2.js +0 -6
  902. package/js/src/static_dependencies/noble-hashes/_u64.js +0 -6
  903. package/js/src/static_dependencies/noble-hashes/argon2.js +0 -6
  904. package/js/src/static_dependencies/noble-hashes/blake2b.js +0 -6
  905. package/js/src/static_dependencies/noble-hashes/blake2s.js +0 -6
  906. package/js/src/static_dependencies/noble-hashes/blake3.js +0 -6
  907. package/js/src/static_dependencies/noble-hashes/crypto.js +0 -6
  908. package/js/src/static_dependencies/noble-hashes/cryptoNode.js +0 -6
  909. package/js/src/static_dependencies/noble-hashes/eskdf.js +0 -6
  910. package/js/src/static_dependencies/noble-hashes/hkdf.js +0 -6
  911. package/js/src/static_dependencies/noble-hashes/hmac.js +0 -6
  912. package/js/src/static_dependencies/noble-hashes/index.js +0 -6
  913. package/js/src/static_dependencies/noble-hashes/md5.js +0 -6
  914. package/js/src/static_dependencies/noble-hashes/pbkdf2.js +0 -6
  915. package/js/src/static_dependencies/noble-hashes/ripemd160.js +0 -6
  916. package/js/src/static_dependencies/noble-hashes/scrypt.js +0 -6
  917. package/js/src/static_dependencies/noble-hashes/sha1.js +0 -6
  918. package/js/src/static_dependencies/noble-hashes/sha256.js +0 -6
  919. package/js/src/static_dependencies/noble-hashes/sha3-addons.js +0 -6
  920. package/js/src/static_dependencies/noble-hashes/sha3.js +0 -6
  921. package/js/src/static_dependencies/noble-hashes/sha512.js +0 -6
  922. package/js/src/static_dependencies/noble-hashes/utils.d.ts +1 -0
  923. package/js/src/static_dependencies/noble-hashes/utils.js +4 -6
  924. package/js/src/static_dependencies/node-fetch/body.js +0 -6
  925. package/js/src/static_dependencies/node-fetch/errors/abort-error.js +0 -6
  926. package/js/src/static_dependencies/node-fetch/errors/base.js +0 -6
  927. package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -6
  928. package/js/src/static_dependencies/node-fetch/headers.js +0 -6
  929. package/js/src/static_dependencies/node-fetch/index.js +0 -6
  930. package/js/src/static_dependencies/node-fetch/request.js +0 -6
  931. package/js/src/static_dependencies/node-fetch/response.js +0 -6
  932. package/js/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  933. package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  934. package/js/src/static_dependencies/node-fetch/utils/is.js +0 -6
  935. package/js/src/static_dependencies/node-fetch/utils/referrer.js +0 -6
  936. package/js/src/static_dependencies/proxies/agent-base/helpers.js +0 -6
  937. package/js/src/static_dependencies/proxies/agent-base/index.js +0 -6
  938. package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -6
  939. package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -6
  940. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  941. package/js/src/static_dependencies/qs/formats.js +0 -6
  942. package/js/src/static_dependencies/qs/index.js +0 -6
  943. package/js/src/static_dependencies/qs/parse.js +0 -6
  944. package/js/src/static_dependencies/qs/stringify.js +0 -6
  945. package/js/src/static_dependencies/qs/utils.js +0 -6
  946. package/js/src/static_dependencies/scure-base/index.js +0 -6
  947. package/js/src/static_dependencies/scure-bip32/index.d.ts +49 -0
  948. package/js/src/static_dependencies/scure-bip32/index.js +289 -0
  949. package/js/src/static_dependencies/scure-bip39/index.d.ts +54 -0
  950. package/js/src/static_dependencies/scure-bip39/index.js +134 -0
  951. package/js/src/static_dependencies/scure-bip39/wordlists/english.d.ts +1 -0
  952. package/js/src/static_dependencies/scure-bip39/wordlists/english.js +2048 -0
  953. package/js/src/static_dependencies/scure-starknet/index.js +0 -6
  954. package/js/src/static_dependencies/starknet/constants.js +0 -6
  955. package/js/src/static_dependencies/starknet/index.js +0 -6
  956. package/js/src/static_dependencies/starknet/types/cairoEnum.js +0 -6
  957. package/js/src/static_dependencies/starknet/types/calldata.js +0 -6
  958. package/js/src/static_dependencies/starknet/types/index.js +0 -6
  959. package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  960. package/js/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  961. package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +0 -6
  962. package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +0 -6
  963. package/js/src/static_dependencies/starknet/types/lib/index.js +0 -6
  964. package/js/src/static_dependencies/starknet/types/typedData.js +0 -6
  965. package/js/src/static_dependencies/starknet/utils/address.js +0 -6
  966. package/js/src/static_dependencies/starknet/utils/assert.js +0 -6
  967. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +0 -6
  968. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +0 -6
  969. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +0 -6
  970. package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -6
  971. package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -6
  972. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  973. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  974. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  975. package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +0 -6
  976. package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -6
  977. package/js/src/static_dependencies/starknet/utils/calldata/index.js +0 -6
  978. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -6
  979. package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +0 -6
  980. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -6
  981. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  982. package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -6
  983. package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -6
  984. package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -6
  985. package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +0 -6
  986. package/js/src/static_dependencies/starknet/utils/calldata/validate.js +0 -6
  987. package/js/src/static_dependencies/starknet/utils/encode.js +0 -6
  988. package/js/src/static_dependencies/starknet/utils/hash/classHash.js +0 -6
  989. package/js/src/static_dependencies/starknet/utils/hash/index.js +0 -6
  990. package/js/src/static_dependencies/starknet/utils/merkle.js +0 -6
  991. package/js/src/static_dependencies/starknet/utils/num.js +0 -6
  992. package/js/src/static_dependencies/starknet/utils/selector.js +0 -6
  993. package/js/src/static_dependencies/starknet/utils/shortString.js +0 -6
  994. package/js/src/static_dependencies/starknet/utils/starknetId.js +0 -6
  995. package/js/src/static_dependencies/starknet/utils/typedData.js +0 -6
  996. package/js/src/static_dependencies/starknet/utils/uint256.js +0 -6
  997. package/js/src/static_dependencies/starknet/utils/url.js +0 -6
  998. package/js/src/static_dependencies/watchable/src/index.js +0 -6
  999. package/js/src/static_dependencies/watchable/src/types.js +0 -6
  1000. package/js/src/static_dependencies/watchable/src/unpromise.js +0 -6
  1001. package/js/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  1002. package/js/src/timex.js +0 -6
  1003. package/js/src/tokocrypto.js +0 -6
  1004. package/js/src/toobit.js +2 -7
  1005. package/js/src/upbit.js +0 -6
  1006. package/js/src/wavesexchange.js +0 -6
  1007. package/js/src/whitebit.js +0 -6
  1008. package/js/src/woo.js +0 -6
  1009. package/js/src/woofipro.js +0 -6
  1010. package/js/src/xt.js +0 -6
  1011. package/js/src/yobit.js +0 -6
  1012. package/js/src/zaif.js +0 -6
  1013. package/js/src/zonda.js +0 -6
  1014. package/package.json +9 -3
@@ -0,0 +1,1225 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var deepcoin$1 = require('../deepcoin.js');
6
+ var errors = require('../base/errors.js');
7
+ var Cache = require('../base/ws/Cache.js');
8
+
9
+ // ---------------------------------------------------------------------------
10
+ // ---------------------------------------------------------------------------
11
+ class deepcoin extends deepcoin$1["default"] {
12
+ describe() {
13
+ return this.deepExtend(super.describe(), {
14
+ 'has': {
15
+ 'ws': true,
16
+ 'watchTicker': true,
17
+ 'watchMarkPrice': false,
18
+ 'watchMarkPrices': false,
19
+ 'watchTickers': false,
20
+ 'watchBidsAsks': false,
21
+ 'watchOrderBook': true,
22
+ 'watchTrades': true,
23
+ 'watchTradesForSymbols': false,
24
+ 'watchOrderBookForSymbols': false,
25
+ 'watchBalance': false,
26
+ 'watchLiquidations': false,
27
+ 'watchLiquidationsForSymbols': false,
28
+ 'watchMyLiquidations': false,
29
+ 'watchMyLiquidationsForSymbols': false,
30
+ 'watchOHLCV': true,
31
+ 'watchOHLCVForSymbols': false,
32
+ 'watchOrders': true,
33
+ 'watchMyTrades': true,
34
+ 'watchPositions': true,
35
+ 'watchFundingRate': false,
36
+ 'watchFundingRates': false,
37
+ 'createOrderWs': false,
38
+ 'editOrderWs': false,
39
+ 'cancelOrderWs': false,
40
+ 'cancelOrdersWs': false,
41
+ 'cancelAllOrdersWs': false,
42
+ 'unWatchTicker': true,
43
+ 'unWatchTrades': true,
44
+ 'unWatchOHLCV': true,
45
+ 'unWatchOrderBook': true,
46
+ },
47
+ 'urls': {
48
+ 'api': {
49
+ 'ws': {
50
+ 'public': {
51
+ 'spot': 'wss://stream.deepcoin.com/streamlet/trade/public/spot?platform=api',
52
+ 'swap': 'wss://stream.deepcoin.com/streamlet/trade/public/swap?platform=api',
53
+ },
54
+ 'private': 'wss://stream.deepcoin.com/v1/private',
55
+ },
56
+ },
57
+ },
58
+ 'options': {
59
+ 'lastRequestId': undefined,
60
+ 'listenKey': undefined,
61
+ 'listenKeyExpiryTimestamp': undefined,
62
+ 'authenticate': {
63
+ 'method': 'privateGetDeepcoinListenkeyExtend', // refresh existing listen key or 'privateGetDeepcoinListenkeyAcquire' - get a new one
64
+ },
65
+ 'timeframes': {
66
+ '1m': '1m',
67
+ '5m': '5m',
68
+ '15m': '15m',
69
+ '30m': '30m',
70
+ '1h': '1h',
71
+ '4h': '4h',
72
+ '12h': '12h',
73
+ '1d': '1d',
74
+ '1w': '1w',
75
+ '1M': '1o',
76
+ '1y': '1y',
77
+ },
78
+ },
79
+ 'streaming': {
80
+ 'ping': this.ping,
81
+ },
82
+ });
83
+ }
84
+ ping(client) {
85
+ const url = client.url;
86
+ if (url.indexOf('private') >= 0) {
87
+ client.lastPong = this.milliseconds();
88
+ // prevent automatic disconnects on private channel
89
+ }
90
+ return 'ping';
91
+ }
92
+ handlePong(client, message) {
93
+ client.lastPong = this.milliseconds();
94
+ return message;
95
+ }
96
+ requestId() {
97
+ const previousValue = this.safeInteger(this.options, 'lastRequestId', 0);
98
+ const newValue = this.sum(previousValue, 1);
99
+ this.options['lastRequestId'] = newValue;
100
+ return newValue;
101
+ }
102
+ createPublicRequest(market, requestId, topicID, suffix = '', unWatch = false) {
103
+ let marketId = market['symbol']; // spot markets use symbol with slash
104
+ if (market['type'] === 'swap') {
105
+ marketId = market['baseId'] + market['quoteId']; // swap markets use symbol without slash
106
+ }
107
+ let action = '1'; // subscribe
108
+ if (unWatch) {
109
+ action = '0'; // unsubscribe
110
+ }
111
+ const request = {
112
+ 'sendTopicAction': {
113
+ 'Action': action,
114
+ 'FilterValue': 'DeepCoin_' + marketId + suffix,
115
+ 'LocalNo': requestId,
116
+ 'ResumeNo': -1,
117
+ 'TopicID': topicID,
118
+ },
119
+ };
120
+ return request;
121
+ }
122
+ async watchPublic(market, messageHash, topicID, params = {}, suffix = '') {
123
+ const url = this.urls['api']['ws']['public'][market['type']];
124
+ const requestId = this.requestId();
125
+ const request = this.createPublicRequest(market, requestId, topicID, suffix);
126
+ const subscription = {
127
+ 'subHash': messageHash,
128
+ 'id': requestId,
129
+ };
130
+ return await this.watch(url, messageHash, this.deepExtend(request, params), messageHash, subscription);
131
+ }
132
+ async unWatchPublic(market, messageHash, topicID, params = {}, subscription = {}, suffix = '') {
133
+ const url = this.urls['api']['ws']['public'][market['type']];
134
+ const requestId = this.requestId();
135
+ const client = this.client(url);
136
+ const existingSubscription = this.safeDict(client.subscriptions, messageHash);
137
+ if (existingSubscription === undefined) {
138
+ throw new errors.BadRequest(this.id + ' no subscription for ' + messageHash);
139
+ }
140
+ const subId = this.safeInteger(existingSubscription, 'id');
141
+ const request = this.createPublicRequest(market, subId, topicID, suffix, true); // unsubscribe message uses the same id as the original subscribe message
142
+ const unsubHash = 'unsubscribe::' + messageHash;
143
+ subscription = this.extend(subscription, {
144
+ 'subHash': messageHash,
145
+ 'unsubHash': unsubHash,
146
+ 'symbols': [market['symbol']],
147
+ 'id': requestId,
148
+ });
149
+ return await this.watch(url, unsubHash, this.deepExtend(request, params), unsubHash, subscription);
150
+ }
151
+ async watchPrivate(messageHash, params = {}) {
152
+ const listenKey = await this.authenticate();
153
+ const url = this.urls['api']['ws']['private'] + '?listenKey=' + listenKey;
154
+ return await this.watch(url, messageHash, undefined, 'private', params);
155
+ }
156
+ async authenticate(params = {}) {
157
+ this.checkRequiredCredentials();
158
+ const time = this.milliseconds();
159
+ let listenKeyExpiryTimestamp = this.safeInteger(this.options, 'listenKeyExpiryTimestamp', time);
160
+ const expired = (time - listenKeyExpiryTimestamp) > 60000; // 1 minute before expiry
161
+ let listenKey = this.safeString(this.options, 'listenKey');
162
+ let response = undefined;
163
+ if (listenKey === undefined) {
164
+ response = await this.privateGetDeepcoinListenkeyAcquire(params);
165
+ }
166
+ else if (expired) {
167
+ const method = this.safeString(this.options, 'method', 'privateGetDeepcoinListenkeyExtend');
168
+ const getNewKey = (method === 'privateGetDeepcoinListenkeyAcquire');
169
+ if (getNewKey) {
170
+ response = await this.privateGetDeepcoinListenkeyAcquire(params);
171
+ }
172
+ else {
173
+ const request = {
174
+ 'listenkey': listenKey,
175
+ };
176
+ response = await this.privateGetDeepcoinListenkeyExtend(this.extend(request, params));
177
+ }
178
+ }
179
+ if (response !== undefined) {
180
+ const data = this.safeDict(response, 'data', {});
181
+ listenKey = this.safeString(data, 'listenkey');
182
+ listenKeyExpiryTimestamp = this.safeTimestamp(data, 'expire_time');
183
+ this.options['listenKey'] = listenKey;
184
+ this.options['listenKeyExpiryTimestamp'] = listenKeyExpiryTimestamp;
185
+ }
186
+ return listenKey;
187
+ }
188
+ /**
189
+ * @method
190
+ * @name deepcoin#watchTicker
191
+ * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
192
+ * @see https://www.deepcoin.com/docs/publicWS/latestMarketData
193
+ * @param {string} symbol unified symbol of the market to fetch the ticker for
194
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
195
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
196
+ */
197
+ async watchTicker(symbol, params = {}) {
198
+ await this.loadMarkets();
199
+ const market = this.market(symbol);
200
+ const messageHash = 'ticker' + '::' + market['symbol'];
201
+ return await this.watchPublic(market, messageHash, '7', params);
202
+ }
203
+ /**
204
+ * @method
205
+ * @name deepcoin#unWatchTicker
206
+ * @description unWatches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
207
+ * @see https://www.deepcoin.com/docs/publicWS/latestMarketData
208
+ * @param {string} symbol unified symbol of the market to fetch the ticker for
209
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
210
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
211
+ */
212
+ async unWatchTicker(symbol, params = {}) {
213
+ await this.loadMarkets();
214
+ const market = this.market(symbol);
215
+ const messageHash = 'ticker' + '::' + market['symbol'];
216
+ const subscription = {
217
+ 'topic': 'ticker',
218
+ };
219
+ return await this.unWatchPublic(market, messageHash, '7', params, subscription);
220
+ }
221
+ handleTicker(client, message) {
222
+ //
223
+ // a: 'PO',
224
+ // m: 'Success',
225
+ // tt: 1760913034780,
226
+ // mt: 1760913034780,
227
+ // r: [
228
+ // {
229
+ // d: {
230
+ // I: 'BTC/USDT',
231
+ // U: 1760913034742,
232
+ // PF: 0,
233
+ // E: 0,
234
+ // O: 108479.9,
235
+ // H: 109449.9,
236
+ // L: 108238,
237
+ // V: 789.3424915,
238
+ // T: 43003872.3705223,
239
+ // N: 109345,
240
+ // M: 87294.7,
241
+ // D: 0,
242
+ // V2: 3086.4496105,
243
+ // T2: 332811624.339836,
244
+ // F: 0,
245
+ // C: 0,
246
+ // BP1: 109344.9,
247
+ // AP1: 109345.2
248
+ // }
249
+ // }
250
+ // ]
251
+ //
252
+ const response = this.safeList(message, 'r', []);
253
+ const first = this.safeDict(response, 0, {});
254
+ const data = this.safeDict(first, 'd', {});
255
+ const marketId = this.safeString(data, 'I');
256
+ const market = this.safeMarket(marketId, undefined, '/');
257
+ const symbol = this.safeSymbol(marketId, market);
258
+ const parsedTicker = this.parseWsTicker(data, market);
259
+ const messageHash = 'ticker' + '::' + symbol;
260
+ this.tickers[symbol] = parsedTicker;
261
+ client.resolve(parsedTicker, messageHash);
262
+ }
263
+ parseWsTicker(ticker, market = undefined) {
264
+ //
265
+ // {
266
+ // I: 'BTC/USDT',
267
+ // U: 1760913034742,
268
+ // PF: 0,
269
+ // E: 0,
270
+ // O: 108479.9,
271
+ // H: 109449.9,
272
+ // L: 108238,
273
+ // V: 789.3424915,
274
+ // T: 43003872.3705223,
275
+ // N: 109345,
276
+ // M: 87294.7,
277
+ // D: 0,
278
+ // V2: 3086.4496105,
279
+ // T2: 332811624.339836,
280
+ // F: 0,
281
+ // C: 0,
282
+ // BP1: 109344.9,
283
+ // AP1: 109345.2
284
+ // }
285
+ //
286
+ const timestamp = this.safeInteger(ticker, 'U');
287
+ const high = this.safeNumber(ticker, 'H');
288
+ const low = this.safeNumber(ticker, 'L');
289
+ const open = this.safeNumber(ticker, 'O');
290
+ const last = this.safeNumber(ticker, 'N');
291
+ const bid = this.safeNumber(ticker, 'BP1');
292
+ const ask = this.safeNumber(ticker, 'AP1');
293
+ let baseVolume = this.safeNumber(ticker, 'V');
294
+ let quoteVolume = this.safeNumber(ticker, 'T');
295
+ if (market['inverse']) {
296
+ const temp = baseVolume;
297
+ baseVolume = quoteVolume;
298
+ quoteVolume = temp;
299
+ }
300
+ return this.safeTicker({
301
+ 'symbol': market['symbol'],
302
+ 'timestamp': timestamp,
303
+ 'datetime': this.iso8601(timestamp),
304
+ 'high': high,
305
+ 'low': low,
306
+ 'bid': bid,
307
+ 'bidVolume': undefined,
308
+ 'ask': ask,
309
+ 'askVolume': undefined,
310
+ 'vwap': undefined,
311
+ 'open': open,
312
+ 'close': last,
313
+ 'last': last,
314
+ 'previousClose': undefined,
315
+ 'change': undefined,
316
+ 'percentage': undefined,
317
+ 'average': undefined,
318
+ 'baseVolume': baseVolume,
319
+ 'quoteVolume': quoteVolume,
320
+ 'info': ticker,
321
+ }, market);
322
+ }
323
+ /**
324
+ * @method
325
+ * @name deepcoin#watchTrades
326
+ * @description watches information on multiple trades made in a market
327
+ * @see https://www.deepcoin.com/docs/publicWS/lastTransactions
328
+ * @param {string} symbol unified market symbol of the market trades were made in
329
+ * @param {int} [since] the earliest time in ms to fetch orders for
330
+ * @param {int} [limit] the maximum number of trade structures to retrieve
331
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
332
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
333
+ */
334
+ async watchTrades(symbol, since = undefined, limit = undefined, params = {}) {
335
+ await this.loadMarkets();
336
+ const market = this.market(symbol);
337
+ const messageHash = 'trades' + '::' + market['symbol'];
338
+ const trades = await this.watchPublic(market, messageHash, '2', params);
339
+ if (this.newUpdates) {
340
+ limit = trades.getLimit(symbol, limit);
341
+ }
342
+ return this.filterBySinceLimit(trades, since, limit, 'timestamp', true);
343
+ }
344
+ /**
345
+ * @method
346
+ * @name deepcoin#unWatchTrades
347
+ * @description unWatches the list of most recent trades for a particular symbol
348
+ * @see https://www.deepcoin.com/docs/publicWS/lastTransactions
349
+ * @param {string} symbol unified symbol of the market to fetch trades for
350
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
351
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
352
+ */
353
+ async unWatchTrades(symbol, params = {}) {
354
+ await this.loadMarkets();
355
+ const market = this.market(symbol);
356
+ const messageHash = 'trades' + '::' + market['symbol'];
357
+ const subscription = {
358
+ 'topic': 'trades',
359
+ };
360
+ return await this.unWatchPublic(market, messageHash, '2', params, subscription);
361
+ }
362
+ handleTrades(client, message) {
363
+ //
364
+ // {
365
+ // "a": "PMT",
366
+ // "b": 0,
367
+ // "tt": 1760968672380,
368
+ // "mt": 1760968672380,
369
+ // "r": [
370
+ // {
371
+ // "d": {
372
+ // "TradeID": "1001056452325378",
373
+ // "I": "BTC/USDT",
374
+ // "D": "1",
375
+ // "P": 111061,
376
+ // "V": 0.00137,
377
+ // "T": 1760968672
378
+ // }
379
+ // }
380
+ // ]
381
+ // }
382
+ //
383
+ const response = this.safeList(message, 'r', []);
384
+ const first = this.safeDict(response, 0, {});
385
+ const data = this.safeDict(first, 'd', {});
386
+ const marketId = this.safeString(data, 'I');
387
+ const market = this.safeMarket(marketId, undefined, '/');
388
+ const symbol = this.safeSymbol(marketId, market);
389
+ if (!(symbol in this.trades)) {
390
+ const limit = this.safeInteger(this.options, 'tradesLimit', 1000);
391
+ this.trades[symbol] = new Cache.ArrayCache(limit);
392
+ }
393
+ const strored = this.trades[symbol];
394
+ if (data !== undefined) {
395
+ const trade = this.parseWsTrade(data, market);
396
+ strored.append(trade);
397
+ }
398
+ const messageHash = 'trades' + '::' + symbol;
399
+ client.resolve(strored, messageHash);
400
+ }
401
+ parseWsTrade(trade, market = undefined) {
402
+ //
403
+ // watchTrades
404
+ // {
405
+ // "TradeID": "1001056452325378",
406
+ // "I": "BTC/USDT",
407
+ // "D": "1",
408
+ // "P": 111061,
409
+ // "V": 0.00137,
410
+ // "T": 1760968672
411
+ // }
412
+ //
413
+ // watchMyTrades
414
+ // {
415
+ // "A": "9256245",
416
+ // "CC": "USDT",
417
+ // "CP": 0,
418
+ // "D": "0",
419
+ // "F": 0.152,
420
+ // "I": "DOGE/USDT",
421
+ // "IT": 1761048103,
422
+ // "M": "9256245",
423
+ // "OS": "1001437462198486",
424
+ // "P": 0.19443,
425
+ // "T": 14.77668,
426
+ // "TI": "1001056459096708",
427
+ // "TT": 1761048103,
428
+ // "V": 76,
429
+ // "f": "DOGE",
430
+ // "l": 1,
431
+ // "m": "1",
432
+ // "o": "0"
433
+ // }
434
+ //
435
+ const direction = this.safeString(trade, 'D');
436
+ const timestamp = this.safeTimestamp2(trade, 'TT', 'T');
437
+ const matchRole = this.safeString(trade, 'm');
438
+ let fee = undefined;
439
+ const feeCost = this.safeString(trade, 'F');
440
+ if (feeCost !== undefined) {
441
+ fee = {
442
+ 'cost': feeCost,
443
+ 'currency': this.safeCurrencyCode(this.safeString(trade, 'f')),
444
+ };
445
+ }
446
+ return this.safeTrade({
447
+ 'info': trade,
448
+ 'timestamp': timestamp,
449
+ 'datetime': this.iso8601(timestamp),
450
+ 'symbol': market['symbol'],
451
+ 'id': this.safeString2(trade, 'TradeID', 'TI'),
452
+ 'order': this.safeString(trade, 'OS'),
453
+ 'type': undefined,
454
+ 'takerOrMaker': this.handleTakerOrMaker(matchRole),
455
+ 'side': this.parseTradeSide(direction),
456
+ 'price': this.safeString(trade, 'P'),
457
+ 'amount': this.safeString(trade, 'V'),
458
+ 'cost': this.safeString(trade, 'T'),
459
+ 'fee': fee,
460
+ }, market);
461
+ }
462
+ parseTradeSide(direction) {
463
+ const sides = {
464
+ '0': 'buy',
465
+ '1': 'sell',
466
+ };
467
+ return this.safeString(sides, direction, direction);
468
+ }
469
+ handleTakerOrMaker(matchRole) {
470
+ const roles = {
471
+ '0': 'maker',
472
+ '1': 'taker',
473
+ };
474
+ return this.safeString(roles, matchRole, matchRole);
475
+ }
476
+ /**
477
+ * @method
478
+ * @name deepcoin#watchOHLCV
479
+ * @description watches historical candlestick data containing the open, high, low, and close price, and the volume of a market
480
+ * @see https://www.deepcoin.com/docs/publicWS/KLines
481
+ * @param {string} symbol unified symbol of the market to fetch OHLCV data for
482
+ * @param {string} [timeframe] the length of time each candle represents
483
+ * @param {int} [since] timestamp in ms of the earliest candle to fetch
484
+ * @param {int} [limit] the maximum amount of candles to fetch
485
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
486
+ * @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
487
+ */
488
+ async watchOHLCV(symbol, timeframe = '1m', since = undefined, limit = undefined, params = {}) {
489
+ await this.loadMarkets();
490
+ const market = this.market(symbol);
491
+ symbol = market['symbol'];
492
+ const timeframes = this.safeDict(this.options, 'timeframes', {});
493
+ const interval = this.safeString(timeframes, timeframe, timeframe);
494
+ const messageHash = 'ohlcv' + '::' + symbol + '::' + timeframe;
495
+ const suffix = '_' + interval;
496
+ const ohlcv = await this.watchPublic(market, messageHash, '11', params, suffix);
497
+ if (this.newUpdates) {
498
+ limit = ohlcv.getLimit(symbol, limit);
499
+ }
500
+ return this.filterBySinceLimit(ohlcv, since, limit, 0, true);
501
+ }
502
+ /**
503
+ * @method
504
+ * @name deepcoin#unWatchOHLCV
505
+ * @description watches historical candlestick data containing the open, high, low, and close price, and the volume of a market
506
+ * @see https://docs.backpack.exchange/#tag/Streams/Public/K-Line
507
+ * @param {string} symbol unified symbol of the market to fetch OHLCV data for
508
+ * @param {string} [timeframe] the length of time each candle represents
509
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
510
+ * @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
511
+ */
512
+ async unWatchOHLCV(symbol, timeframe = '1m', params = {}) {
513
+ await this.loadMarkets();
514
+ const market = this.market(symbol);
515
+ symbol = market['symbol'];
516
+ const timeframes = this.safeDict(this.options, 'timeframes', {});
517
+ const interval = this.safeString(timeframes, timeframe, timeframe);
518
+ const messageHash = 'ohlcv' + '::' + symbol + '::' + timeframe;
519
+ const suffix = '_' + interval;
520
+ const subscription = {
521
+ 'topic': 'ohlcv',
522
+ 'symbolsAndTimeframes': [[symbol, timeframe]],
523
+ };
524
+ return await this.unWatchPublic(market, messageHash, '11', params, subscription, suffix);
525
+ }
526
+ handleOHLCV(client, message) {
527
+ //
528
+ // {
529
+ // "a": "PK",
530
+ // "tt": 1760972831580,
531
+ // "mt": 1760972831580,
532
+ // "r": [
533
+ // {
534
+ // "d": {
535
+ // "I": "BTC/USDT",
536
+ // "P": "1m",
537
+ // "B": 1760972820,
538
+ // "O": 111373,
539
+ // "C": 111382.9,
540
+ // "H": 111382.9,
541
+ // "L": 111373,
542
+ // "V": 0.2414172,
543
+ // "M": 26888.19693324
544
+ // },
545
+ // "t": "LK"
546
+ // }
547
+ // ]
548
+ // }
549
+ //
550
+ const response = this.safeList(message, 'r', []);
551
+ const first = this.safeDict(response, 0, {});
552
+ const data = this.safeDict(first, 'd', {});
553
+ const marketId = this.safeString(data, 'I');
554
+ const market = this.safeMarket(marketId, undefined, '/');
555
+ const symbol = this.safeSymbol(marketId, market);
556
+ const interval = this.safeString(data, 'P');
557
+ const timeframe = this.findTimeframe(interval);
558
+ if (!(symbol in this.ohlcvs)) {
559
+ this.ohlcvs[symbol] = {};
560
+ }
561
+ if (!(timeframe in this.ohlcvs[symbol])) {
562
+ const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
563
+ this.ohlcvs[symbol][timeframe] = new Cache.ArrayCacheByTimestamp(limit);
564
+ }
565
+ const stored = this.ohlcvs[symbol][timeframe];
566
+ if (data !== undefined) {
567
+ const ohlcv = this.parseWsOHLCV(data, market);
568
+ stored.append(ohlcv);
569
+ }
570
+ const messageHash = 'ohlcv' + '::' + symbol + '::' + timeframe;
571
+ client.resolve(stored, messageHash);
572
+ }
573
+ parseWsOHLCV(ohlcv, market = undefined) {
574
+ //
575
+ // {
576
+ // "I": "BTC/USDT",
577
+ // "P": "1m",
578
+ // "B": 1760972820,
579
+ // "O": 111373,
580
+ // "C": 111382.9,
581
+ // "H": 111382.9,
582
+ // "L": 111373,
583
+ // "V": 0.2414172,
584
+ // "M": 26888.19693324
585
+ // }
586
+ //
587
+ return [
588
+ this.safeTimestamp(ohlcv, 'B'),
589
+ this.safeNumber(ohlcv, 'O'),
590
+ this.safeNumber(ohlcv, 'H'),
591
+ this.safeNumber(ohlcv, 'L'),
592
+ this.safeNumber(ohlcv, 'C'),
593
+ this.safeNumber(ohlcv, 'V'),
594
+ ];
595
+ }
596
+ /**
597
+ * @method
598
+ * @name deepcoin#watchOrderBook
599
+ * @description watches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
600
+ * @see https://www.deepcoin.com/docs/publicWS/25LevelIncrementalMarketData
601
+ * @param {string} symbol unified symbol of the market to fetch the order book for
602
+ * @param {int} [limit] the maximum amount of order book entries to return.
603
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
604
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
605
+ */
606
+ async watchOrderBook(symbol, limit = undefined, params = {}) {
607
+ await this.loadMarkets();
608
+ const market = this.market(symbol);
609
+ const messageHash = 'orderbook' + '::' + market['symbol'];
610
+ const suffix = '_0.1';
611
+ const orderbook = await this.watchPublic(market, messageHash, '25', params, suffix);
612
+ return orderbook.limit();
613
+ }
614
+ /**
615
+ * @method
616
+ * @name deepcoin#unWatchOrderBook
617
+ * @description unWatches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
618
+ * @see https://www.deepcoin.com/docs/publicWS/25LevelIncrementalMarketData
619
+ * @param {string} symbol unified array of symbols
620
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
621
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
622
+ */
623
+ async unWatchOrderBook(symbol, params = {}) {
624
+ await this.loadMarkets();
625
+ const market = this.market(symbol);
626
+ const messageHash = 'orderbook' + '::' + market['symbol'];
627
+ const suffix = '_0.1';
628
+ const subscription = {
629
+ 'topic': 'orderbook',
630
+ };
631
+ return await this.unWatchPublic(market, messageHash, '25', params, subscription, suffix);
632
+ }
633
+ handleOrderBook(client, message) {
634
+ //
635
+ // {
636
+ // "a": "PMO",
637
+ // "t": "i", // i - update, f - snapshot
638
+ // "r": [
639
+ // {
640
+ // "d": { "I": "ETH/USDT", "D": "1", "P": 4021, "V": 54.39979 }
641
+ // },
642
+ // {
643
+ // "d": { "I": "ETH/USDT", "D": "0", "P": 4021.1, "V": 49.56724 }
644
+ // }
645
+ // ],
646
+ // "tt": 1760975816446,
647
+ // "mt": 1760975816446
648
+ // }
649
+ //
650
+ const response = this.safeList(message, 'r', []);
651
+ const first = this.safeDict(response, 0, {});
652
+ const data = this.safeDict(first, 'd', {});
653
+ const marketId = this.safeString(data, 'I');
654
+ const market = this.safeMarket(marketId, undefined, '/');
655
+ const symbol = this.safeSymbol(marketId, market);
656
+ if (!(symbol in this.orderbooks)) {
657
+ this.orderbooks[symbol] = this.orderBook();
658
+ }
659
+ const orderbook = this.orderbooks[symbol];
660
+ const type = this.safeString(message, 't');
661
+ if (orderbook['timestamp'] === undefined) {
662
+ if (type === 'f') {
663
+ // snapshot
664
+ this.handleOrderBookSnapshot(client, message);
665
+ }
666
+ else {
667
+ // cache the updates until the snapshot is received
668
+ orderbook.cache.push(message);
669
+ }
670
+ }
671
+ else {
672
+ this.handleOrderBookMessage(client, message, orderbook);
673
+ const messageHash = 'orderbook' + '::' + symbol;
674
+ client.resolve(orderbook, messageHash);
675
+ }
676
+ }
677
+ handleOrderBookSnapshot(client, message) {
678
+ const entries = this.safeList(message, 'r', []);
679
+ const first = this.safeDict(entries, 0, {});
680
+ const data = this.safeDict(first, 'd', {});
681
+ const marketId = this.safeString(data, 'I');
682
+ const market = this.safeMarket(marketId, undefined, '/');
683
+ const symbol = this.safeSymbol(marketId, market);
684
+ const orderbook = this.orderbooks[symbol];
685
+ const orderedEntries = {
686
+ 'bids': [],
687
+ 'asks': [],
688
+ };
689
+ for (let i = 0; i < entries.length; i++) {
690
+ const entry = entries[i];
691
+ const entryData = this.safeDict(entry, 'd', {});
692
+ const side = this.safeString(entryData, 'D');
693
+ const price = this.safeNumber(entryData, 'P');
694
+ const volume = this.safeNumber(entryData, 'V');
695
+ if (side === '0') {
696
+ // bid
697
+ orderedEntries['bids'].push([price, volume]);
698
+ }
699
+ else if (side === '1') {
700
+ // ask
701
+ orderedEntries['asks'].push([price, volume]);
702
+ }
703
+ }
704
+ const timestamp = this.safeInteger(message, 'mt');
705
+ const snapshot = this.parseOrderBook(orderedEntries, symbol, timestamp);
706
+ orderbook.reset(snapshot);
707
+ const cachedMessages = orderbook.cache;
708
+ for (let j = 0; j < cachedMessages.length; j++) {
709
+ const cachedMessage = cachedMessages[j];
710
+ this.handleOrderBookMessage(client, cachedMessage, orderbook);
711
+ }
712
+ orderbook.cache = [];
713
+ const messageHash = 'orderbook' + '::' + symbol;
714
+ client.resolve(orderbook, messageHash);
715
+ }
716
+ handleOrderBookMessage(client, message, orderbook) {
717
+ // {
718
+ // "a": "PMO",
719
+ // "t": "i", // i - update, f - snapshot
720
+ // "r": [
721
+ // {
722
+ // "d": { "I": "ETH/USDT", "D": "1", "P": 4021, "V": 54.39979 }
723
+ // },
724
+ // {
725
+ // "d": { "I": "ETH/USDT", "D": "0", "P": 4021.1, "V": 49.56724 }
726
+ // }
727
+ // ],
728
+ // "tt": 1760975816446,
729
+ // "mt": 1760975816446
730
+ // }
731
+ //
732
+ const timestamp = this.safeInteger(message, 'mt');
733
+ if (timestamp > orderbook['timestamp']) {
734
+ const response = this.safeList(message, 'r', []);
735
+ this.handleDeltas(orderbook, response);
736
+ orderbook['timestamp'] = timestamp;
737
+ orderbook['datetime'] = this.iso8601(timestamp);
738
+ }
739
+ }
740
+ handleDelta(orderbook, entry) {
741
+ const data = this.safeDict(entry, 'd', {});
742
+ const bids = orderbook['bids'];
743
+ const asks = orderbook['asks'];
744
+ const side = this.safeString(data, 'D');
745
+ const price = this.safeNumber(data, 'P');
746
+ const volume = this.safeNumber(data, 'V');
747
+ if (side === '0') {
748
+ // bid
749
+ bids.store(price, volume);
750
+ }
751
+ else if (side === '1') {
752
+ // ask
753
+ asks.store(price, volume);
754
+ }
755
+ }
756
+ /**
757
+ * @method
758
+ * @name deepcoin#watchMyTrades
759
+ * @description watches information on multiple trades made by the user
760
+ * @see https://www.deepcoin.com/docs/privateWS/Trade
761
+ * @param {string} symbol unified market symbol of the market orders were made in
762
+ * @param {int} [since] the earliest time in ms to fetch orders for
763
+ * @param {int} [limit] the maximum number of order structures to retrieve
764
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
765
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
766
+ */
767
+ async watchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
768
+ let messageHash = 'myTrades';
769
+ await this.loadMarkets();
770
+ if (symbol !== undefined) {
771
+ symbol = this.symbol(symbol);
772
+ messageHash += '::' + symbol;
773
+ }
774
+ const trades = await this.watchPrivate(messageHash, params);
775
+ if (this.newUpdates) {
776
+ limit = trades.getLimit(symbol, limit);
777
+ }
778
+ return this.filterBySymbolSinceLimit(trades, symbol, since, limit, true);
779
+ }
780
+ handleMyTrade(client, message) {
781
+ //
782
+ // {
783
+ // "action": "PushTrade",
784
+ // "result": [
785
+ // {
786
+ // "table": "Trade",
787
+ // "data": {
788
+ // "A": "9256245",
789
+ // "CC": "USDT",
790
+ // "CP": 0,
791
+ // "D": "0",
792
+ // "F": 0.152,
793
+ // "I": "DOGE/USDT",
794
+ // "IT": 1761048103,
795
+ // "M": "9256245",
796
+ // "OS": "1001437462198486",
797
+ // "P": 0.19443,
798
+ // "T": 14.77668,
799
+ // "TI": "1001056459096708",
800
+ // "TT": 1761048103,
801
+ // "V": 76,
802
+ // "f": "DOGE",
803
+ // "l": 1,
804
+ // "m": "1",
805
+ // "o": "0"
806
+ // }
807
+ // }
808
+ // ]
809
+ // }
810
+ //
811
+ const result = this.safeList(message, 'result', []);
812
+ const first = this.safeDict(result, 0, {});
813
+ const data = this.safeDict(first, 'data', {});
814
+ const marketId = this.safeString(data, 'I');
815
+ const market = this.safeMarket(marketId, undefined, '/');
816
+ const symbol = this.safeSymbol(marketId, market);
817
+ const messageHash = 'myTrades';
818
+ const symbolMessageHash = messageHash + '::' + symbol;
819
+ if ((messageHash in client.futures) || (symbolMessageHash in client.futures)) {
820
+ if (this.myTrades === undefined) {
821
+ const limit = this.safeInteger(this.options, 'tradesLimit', 1000);
822
+ this.myTrades = new Cache.ArrayCacheBySymbolById(limit);
823
+ }
824
+ const stored = this.myTrades;
825
+ const parsed = this.parseWsTrade(data, market);
826
+ stored.append(parsed);
827
+ client.resolve(stored, messageHash);
828
+ client.resolve(stored, symbolMessageHash);
829
+ }
830
+ }
831
+ /**
832
+ * @method
833
+ * @name deepcoin#watchOrders
834
+ * @description watches information on multiple orders made by the user
835
+ * @see https://www.deepcoin.com/docs/privateWS/order
836
+ * @param {string} symbol unified market symbol of the market orders were made in
837
+ * @param {int} [since] the earliest time in ms to fetch orders for
838
+ * @param {int} [limit] the maximum number of order structures to retrieve
839
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
840
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
841
+ */
842
+ async watchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
843
+ let messageHash = 'orders';
844
+ await this.loadMarkets();
845
+ if (symbol !== undefined) {
846
+ symbol = this.symbol(symbol);
847
+ messageHash += '::' + symbol;
848
+ }
849
+ const orders = await this.watchPrivate(messageHash, params);
850
+ if (this.newUpdates) {
851
+ limit = orders.getLimit(symbol, limit);
852
+ }
853
+ return this.filterBySymbolSinceLimit(orders, symbol, since, limit, true);
854
+ }
855
+ handleOrder(client, message) {
856
+ //
857
+ // {
858
+ // "action": "PushOrder",
859
+ // "result": [
860
+ // {
861
+ // "table": "Order",
862
+ // "data": {
863
+ // "D": "0",
864
+ // "I": "DOGE/USDT",
865
+ // "IT": 1761051006,
866
+ // "L": "1001437480817468",
867
+ // "OPT": "4",
868
+ // "OS": "1001437480817468",
869
+ // "OT": "0",
870
+ // "Or": "1",
871
+ // "P": 0.19537,
872
+ // "T": 14.84128,
873
+ // "U": 1761051006,
874
+ // "V": 76,
875
+ // "VT": 76,
876
+ // "i": 1,
877
+ // "l": 1,
878
+ // "o": "0",
879
+ // "p": "0",
880
+ // "t": 0.19528
881
+ // }
882
+ // }
883
+ // ]
884
+ // }
885
+ //
886
+ const result = this.safeList(message, 'result', []);
887
+ const first = this.safeDict(result, 0, {});
888
+ const data = this.safeDict(first, 'data', {});
889
+ const marketId = this.safeString(data, 'I');
890
+ const market = this.safeMarket(marketId, undefined, '/');
891
+ const symbol = this.safeSymbol(marketId, market);
892
+ const messageHash = 'orders';
893
+ const symbolMessageHash = messageHash + '::' + symbol;
894
+ if ((messageHash in client.futures) || (symbolMessageHash in client.futures)) {
895
+ if (this.orders === undefined) {
896
+ const limit = this.safeInteger(this.options, 'ordersLimit', 1000);
897
+ this.orders = new Cache.ArrayCacheBySymbolById(limit);
898
+ }
899
+ const parsed = this.parseWsOrder(data, market);
900
+ this.orders.append(parsed);
901
+ client.resolve(this.orders, messageHash);
902
+ client.resolve(this.orders, symbolMessageHash);
903
+ }
904
+ }
905
+ parseWsOrder(order, market = undefined) {
906
+ //
907
+ // {
908
+ // "D": "0",
909
+ // "I": "DOGE/USDT",
910
+ // "IT": 1761051006,
911
+ // "L": "1001437480817468",
912
+ // "OPT": "4",
913
+ // "OS": "1001437480817468",
914
+ // "OT": "0",
915
+ // "Or": "1",
916
+ // "P": 0.19537,
917
+ // "T": 14.84128,
918
+ // "U": 1761051006,
919
+ // "V": 76,
920
+ // "VT": 76,
921
+ // "i": 1,
922
+ // "l": 1,
923
+ // "o": "0",
924
+ // "p": "0",
925
+ // "t": 0.19528
926
+ // }
927
+ //
928
+ const state = this.safeString(order, 'Or');
929
+ const timestamp = this.safeTimestamp(order, 'IT');
930
+ const direction = this.safeString(order, 'D');
931
+ return this.safeOrder({
932
+ 'id': this.safeString(order, 'OS'),
933
+ 'clientOrderId': undefined,
934
+ 'datetime': this.iso8601(timestamp),
935
+ 'timestamp': timestamp,
936
+ 'lastTradeTimestamp': undefined,
937
+ 'lastUpdateTimestamp': this.safeTimestamp(order, 'U'),
938
+ 'status': this.parseWsOrderStatus(state),
939
+ 'symbol': market['symbol'],
940
+ 'type': undefined,
941
+ 'timeInForce': undefined,
942
+ 'side': this.parseTradeSide(direction),
943
+ 'price': this.safeString(order, 'P'),
944
+ 'average': this.safeString(order, 't'),
945
+ 'amount': this.safeString(order, 'V'),
946
+ 'filled': this.safeString(order, 'VT'),
947
+ 'remaining': undefined,
948
+ 'triggerPrice': undefined,
949
+ 'takeProfitPrice': this.safeString(order, 'TPT'),
950
+ 'stopLossPrice': this.safeString(order, 'SLT'),
951
+ 'cost': this.safeString(order, 'T'),
952
+ 'trades': undefined,
953
+ 'fee': undefined,
954
+ 'reduceOnly': undefined,
955
+ 'postOnly': undefined,
956
+ 'info': order,
957
+ }, market);
958
+ }
959
+ parseWsOrderStatus(status) {
960
+ const statuses = {
961
+ '1': 'closed',
962
+ '4': 'open',
963
+ '6': 'canceled',
964
+ };
965
+ return this.safeString(statuses, status, status);
966
+ }
967
+ /**
968
+ * @method
969
+ * @name deepcoin#watchPositions
970
+ * @description watch all open positions
971
+ * @see https://www.deepcoin.com/docs/privateWS/Position
972
+ * @param {string[]} [symbols] list of unified market symbols to watch positions for
973
+ * @param {int} [since] the earliest time in ms to fetch positions for
974
+ * @param {int} [limit] the maximum number of positions to retrieve
975
+ * @param {object} params extra parameters specific to the exchange API endpoint
976
+ * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/en/latest/manual.html#position-structure}
977
+ */
978
+ async watchPositions(symbols = undefined, since = undefined, limit = undefined, params = {}) {
979
+ await this.loadMarkets();
980
+ const listenKey = await this.authenticate();
981
+ symbols = this.marketSymbols(symbols);
982
+ const messageHash = 'positions';
983
+ const messageHashes = [];
984
+ if (symbols !== undefined) {
985
+ for (let i = 0; i < symbols.length; i++) {
986
+ const symbol = symbols[i];
987
+ const symbolMessageHash = messageHash + '::' + symbol;
988
+ messageHashes.push(symbolMessageHash);
989
+ }
990
+ }
991
+ else {
992
+ messageHashes.push(messageHash);
993
+ }
994
+ const url = this.urls['api']['ws']['private'] + '?listenKey=' + listenKey;
995
+ const positions = await this.watchMultiple(url, messageHashes, params, ['private']);
996
+ if (this.newUpdates) {
997
+ return positions;
998
+ }
999
+ return this.filterBySymbolsSinceLimit(this.positions, symbols, since, limit, true);
1000
+ }
1001
+ handlePosition(client, message) {
1002
+ //
1003
+ // {
1004
+ // "action": "PushPosition",
1005
+ // "result": [
1006
+ // {
1007
+ // "table": "Position",
1008
+ // "data": {
1009
+ // "A": "9256245",
1010
+ // "CP": 0,
1011
+ // "I": "DOGE/USDT",
1012
+ // "M": "9256245",
1013
+ // "OP": 0.198845,
1014
+ // "Po": 151.696,
1015
+ // "U": 1761058213,
1016
+ // "i": 1,
1017
+ // "l": 1,
1018
+ // "p": "0",
1019
+ // "u": 0
1020
+ // }
1021
+ // }
1022
+ // ]
1023
+ // }
1024
+ //
1025
+ const result = this.safeList(message, 'result', []);
1026
+ const first = this.safeDict(result, 0, {});
1027
+ const data = this.safeDict(first, 'data', {});
1028
+ const marketId = this.safeString(data, 'I');
1029
+ const market = this.safeMarket(marketId, undefined, '/');
1030
+ const symbol = this.safeSymbol(marketId, market);
1031
+ const messageHash = 'positions';
1032
+ const symbolMessageHash = messageHash + '::' + symbol;
1033
+ if ((messageHash in client.futures) || (symbolMessageHash in client.futures)) {
1034
+ if (this.positions === undefined) {
1035
+ this.positions = new Cache.ArrayCacheBySymbolBySide();
1036
+ }
1037
+ const parsed = this.parseWsPosition(data, market);
1038
+ this.positions.append(parsed);
1039
+ client.resolve(this.positions, messageHash);
1040
+ client.resolve(this.positions, symbolMessageHash);
1041
+ }
1042
+ }
1043
+ parseWsPosition(position, market = undefined) {
1044
+ //
1045
+ // {
1046
+ // "A": "9256245",
1047
+ // "CP": 0,
1048
+ // "I": "DOGE/USDT",
1049
+ // "M": "9256245",
1050
+ // "OP": 0.198845,
1051
+ // "Po": 151.696,
1052
+ // "U": 1761058213,
1053
+ // "i": 1,
1054
+ // "l": 1,
1055
+ // "p": "0",
1056
+ // "u": 0
1057
+ // }
1058
+ //
1059
+ const timestamp = this.safeInteger(position, 'U');
1060
+ const direction = this.safeString(position, 'p');
1061
+ const marginMode = this.safeString(position, 'i');
1062
+ return this.safePosition({
1063
+ 'symbol': market['symbol'],
1064
+ 'id': undefined,
1065
+ 'timestamp': timestamp,
1066
+ 'datetime': this.iso8601(timestamp),
1067
+ 'contracts': this.safeString(position, 'Po'),
1068
+ 'contractSize': undefined,
1069
+ 'side': this.parsePositionSide(direction),
1070
+ 'notional': undefined,
1071
+ 'leverage': this.omitZero(this.safeString(position, 'l')),
1072
+ 'unrealizedPnl': undefined,
1073
+ 'realizedPnl': undefined,
1074
+ 'collateral': undefined,
1075
+ 'entryPrice': this.safeString(position, 'OP'),
1076
+ 'markPrice': undefined,
1077
+ 'liquidationPrice': undefined,
1078
+ 'marginMode': this.parseWsMarginMode(marginMode),
1079
+ 'hedged': true,
1080
+ 'maintenanceMargin': this.safeString(position, 'u'),
1081
+ 'maintenanceMarginPercentage': undefined,
1082
+ 'initialMargin': undefined,
1083
+ 'initialMarginPercentage': undefined,
1084
+ 'marginRatio': undefined,
1085
+ 'lastUpdateTimestamp': undefined,
1086
+ 'lastPrice': undefined,
1087
+ 'stopLossPrice': undefined,
1088
+ 'takeProfitPrice': undefined,
1089
+ 'percentage': undefined,
1090
+ 'info': position,
1091
+ });
1092
+ }
1093
+ parsePositionSide(direction) {
1094
+ if (direction === undefined) {
1095
+ return direction;
1096
+ }
1097
+ const directions = {
1098
+ '0': 'long',
1099
+ '1': 'short',
1100
+ };
1101
+ return this.safeString(directions, direction, direction);
1102
+ }
1103
+ parseWsMarginMode(marginMode) {
1104
+ if (marginMode === undefined) {
1105
+ return marginMode;
1106
+ }
1107
+ const modes = {
1108
+ '0': 'isolated',
1109
+ '1': 'cross',
1110
+ };
1111
+ return this.safeString(modes, marginMode, marginMode);
1112
+ }
1113
+ handleMessage(client, message) {
1114
+ if (message === 'pong') {
1115
+ this.handlePong(client, message);
1116
+ }
1117
+ else {
1118
+ const m = this.safeString(message, 'm');
1119
+ if ((m !== undefined) && (m !== 'Success')) {
1120
+ this.handleErrorMessage(client, message);
1121
+ }
1122
+ const action = this.safeString2(message, 'a', 'action');
1123
+ if (action === 'RecvTopicAction') {
1124
+ this.handleSubscriptionStatus(client, message);
1125
+ }
1126
+ else if (action === 'PO') {
1127
+ this.handleTicker(client, message);
1128
+ }
1129
+ else if (action === 'PMT') {
1130
+ this.handleTrades(client, message);
1131
+ }
1132
+ else if (action === 'PK') {
1133
+ this.handleOHLCV(client, message);
1134
+ }
1135
+ else if (action === 'PMO') {
1136
+ this.handleOrderBook(client, message);
1137
+ }
1138
+ else if (action === 'PushTrade') {
1139
+ this.handleMyTrade(client, message);
1140
+ }
1141
+ else if (action === 'PushOrder') {
1142
+ this.handleOrder(client, message);
1143
+ }
1144
+ else if (action === 'PushPosition') {
1145
+ this.handlePosition(client, message);
1146
+ }
1147
+ }
1148
+ }
1149
+ handleSubscriptionStatus(client, message) {
1150
+ //
1151
+ // {
1152
+ // "a": "RecvTopicAction",
1153
+ // "m": "Success",
1154
+ // "r": [
1155
+ // {
1156
+ // "d": {
1157
+ // "A": "0",
1158
+ // "L": 1,
1159
+ // "T": "7",
1160
+ // "F": "DeepCoin_BTC/USDT",
1161
+ // "R": -1
1162
+ // }
1163
+ // }
1164
+ // ]
1165
+ // }
1166
+ //
1167
+ const response = this.safeList(message, 'r', []);
1168
+ const first = this.safeDict(response, 0, {});
1169
+ const data = this.safeDict(first, 'd', {});
1170
+ const action = this.safeString(data, 'A'); // 1 = subscribe, 0 = unsubscribe
1171
+ if (action === '0') {
1172
+ const subscriptionsById = this.indexBy(client.subscriptions, 'id');
1173
+ const subId = this.safeInteger(data, 'L');
1174
+ const subscription = this.safeDict(subscriptionsById, subId, {}); // original watch subscription
1175
+ const subHash = this.safeString(subscription, 'subHash');
1176
+ const unsubHash = 'unsubscribe::' + subHash;
1177
+ const unsubsciption = this.safeDict(client.subscriptions, unsubHash, {}); // unWatch subscription
1178
+ this.handleUnSubscription(client, unsubsciption);
1179
+ }
1180
+ }
1181
+ handleUnSubscription(client, subscription) {
1182
+ const subHash = this.safeString(subscription, 'subHash');
1183
+ const unsubHash = this.safeString(subscription, 'unsubHash');
1184
+ this.cleanUnsubscription(client, subHash, unsubHash);
1185
+ this.cleanCache(subscription);
1186
+ }
1187
+ handleErrorMessage(client, message) {
1188
+ //
1189
+ // {
1190
+ // "a": "RecvTopicAction",
1191
+ // "m": "subscription cluster does not "exist": BTC/USD",
1192
+ // "r": [
1193
+ // {
1194
+ // "d": {
1195
+ // "A": "1",
1196
+ // "L": 1,
1197
+ // "T": "7",
1198
+ // "F": "DeepCoin_BTC/USD",
1199
+ // "R": -1
1200
+ // }
1201
+ // }
1202
+ // ]
1203
+ // }
1204
+ //
1205
+ const messageText = this.safeString(message, 'm', '');
1206
+ const response = this.safeList(message, 'r', []);
1207
+ const first = this.safeDict(response, 0, {});
1208
+ const data = this.safeDict(first, 'd', {});
1209
+ const requestId = this.safeInteger(data, 'L');
1210
+ const subscriptionsById = this.indexBy(client.subscriptions, 'id');
1211
+ const subscription = this.safeDict(subscriptionsById, requestId, {});
1212
+ const messageHash = this.safeString(subscription, 'subHash');
1213
+ const feedback = this.id + ' ' + this.json(message);
1214
+ try {
1215
+ this.throwExactlyMatchedException(this.exceptions['exact'], messageText, feedback);
1216
+ this.throwBroadlyMatchedException(this.exceptions['broad'], messageText, feedback);
1217
+ throw new errors.ExchangeError(feedback);
1218
+ }
1219
+ catch (e) {
1220
+ client.reject(e, messageHash);
1221
+ }
1222
+ }
1223
+ }
1224
+
1225
+ exports["default"] = deepcoin;