ccxt 4.5.3 → 4.5.5

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 (920) hide show
  1. package/README.md +7 -6
  2. package/dist/ccxt.browser.min.js +6 -6
  3. package/dist/cjs/ccxt.js +6 -1
  4. package/dist/cjs/src/abstract/alpaca.js +1 -1
  5. package/dist/cjs/src/abstract/apex.js +1 -1
  6. package/dist/cjs/src/abstract/ascendex.js +1 -1
  7. package/dist/cjs/src/abstract/backpack.js +11 -0
  8. package/dist/cjs/src/abstract/bigone.js +1 -1
  9. package/dist/cjs/src/abstract/binance.js +1 -1
  10. package/dist/cjs/src/abstract/bingx.js +1 -1
  11. package/dist/cjs/src/abstract/bit2c.js +1 -1
  12. package/dist/cjs/src/abstract/bitbank.js +1 -1
  13. package/dist/cjs/src/abstract/bitbns.js +1 -1
  14. package/dist/cjs/src/abstract/bitfinex.js +1 -1
  15. package/dist/cjs/src/abstract/bitflyer.js +1 -1
  16. package/dist/cjs/src/abstract/bitget.js +1 -1
  17. package/dist/cjs/src/abstract/bithumb.js +1 -1
  18. package/dist/cjs/src/abstract/bitmart.js +1 -1
  19. package/dist/cjs/src/abstract/bitmex.js +1 -1
  20. package/dist/cjs/src/abstract/bitopro.js +1 -1
  21. package/dist/cjs/src/abstract/bitrue.js +1 -1
  22. package/dist/cjs/src/abstract/bitso.js +1 -1
  23. package/dist/cjs/src/abstract/bitstamp.js +1 -1
  24. package/dist/cjs/src/abstract/bitteam.js +1 -1
  25. package/dist/cjs/src/abstract/bittrade.js +1 -1
  26. package/dist/cjs/src/abstract/bitvavo.js +1 -1
  27. package/dist/cjs/src/abstract/blockchaincom.js +1 -1
  28. package/dist/cjs/src/abstract/blofin.js +1 -1
  29. package/dist/cjs/src/abstract/btcalpha.js +1 -1
  30. package/dist/cjs/src/abstract/btcbox.js +1 -1
  31. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  32. package/dist/cjs/src/abstract/btcturk.js +1 -1
  33. package/dist/cjs/src/abstract/bybit.js +1 -1
  34. package/dist/cjs/src/abstract/cex.js +1 -1
  35. package/dist/cjs/src/abstract/coinbase.js +1 -1
  36. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  37. package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
  38. package/dist/cjs/src/abstract/coincatch.js +1 -1
  39. package/dist/cjs/src/abstract/coincheck.js +1 -1
  40. package/dist/cjs/src/abstract/coinex.js +1 -1
  41. package/dist/cjs/src/abstract/coinmate.js +1 -1
  42. package/dist/cjs/src/abstract/coinmetro.js +1 -1
  43. package/dist/cjs/src/abstract/coinone.js +1 -1
  44. package/dist/cjs/src/abstract/coinsph.js +1 -1
  45. package/dist/cjs/src/abstract/coinspot.js +1 -1
  46. package/dist/cjs/src/abstract/cryptocom.js +1 -1
  47. package/dist/cjs/src/abstract/cryptomus.js +1 -1
  48. package/dist/cjs/src/abstract/defx.js +1 -1
  49. package/dist/cjs/src/abstract/delta.js +1 -1
  50. package/dist/cjs/src/abstract/deribit.js +1 -1
  51. package/dist/cjs/src/abstract/derive.js +1 -1
  52. package/dist/cjs/src/abstract/digifinex.js +1 -1
  53. package/dist/cjs/src/abstract/exmo.js +1 -1
  54. package/dist/cjs/src/abstract/foxbit.js +1 -1
  55. package/dist/cjs/src/abstract/gate.js +1 -1
  56. package/dist/cjs/src/abstract/gemini.js +1 -1
  57. package/dist/cjs/src/abstract/hashkey.js +1 -1
  58. package/dist/cjs/src/abstract/hibachi.js +1 -1
  59. package/dist/cjs/src/abstract/hitbtc.js +1 -1
  60. package/dist/cjs/src/abstract/hollaex.js +1 -1
  61. package/dist/cjs/src/abstract/htx.js +1 -1
  62. package/dist/cjs/src/abstract/hyperliquid.js +1 -1
  63. package/dist/cjs/src/abstract/independentreserve.js +1 -1
  64. package/dist/cjs/src/abstract/indodax.js +1 -1
  65. package/dist/cjs/src/abstract/kraken.js +1 -1
  66. package/dist/cjs/src/abstract/krakenfutures.js +1 -1
  67. package/dist/cjs/src/abstract/kucoin.js +1 -1
  68. package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
  69. package/dist/cjs/src/abstract/latoken.js +1 -1
  70. package/dist/cjs/src/abstract/lbank.js +1 -1
  71. package/dist/cjs/src/abstract/luno.js +1 -1
  72. package/dist/cjs/src/abstract/mercado.js +1 -1
  73. package/dist/cjs/src/abstract/mexc.js +1 -1
  74. package/dist/cjs/src/abstract/modetrade.js +1 -1
  75. package/dist/cjs/src/abstract/ndax.js +1 -1
  76. package/dist/cjs/src/abstract/novadax.js +1 -1
  77. package/dist/cjs/src/abstract/oceanex.js +1 -1
  78. package/dist/cjs/src/abstract/okcoin.js +1 -1
  79. package/dist/cjs/src/abstract/okx.js +1 -1
  80. package/dist/cjs/src/abstract/onetrading.js +1 -1
  81. package/dist/cjs/src/abstract/oxfun.js +1 -1
  82. package/dist/cjs/src/abstract/p2b.js +1 -1
  83. package/dist/cjs/src/abstract/paradex.js +1 -1
  84. package/dist/cjs/src/abstract/paymium.js +1 -1
  85. package/dist/cjs/src/abstract/phemex.js +1 -1
  86. package/dist/cjs/src/abstract/poloniex.js +1 -1
  87. package/dist/cjs/src/abstract/probit.js +1 -1
  88. package/dist/cjs/src/abstract/timex.js +1 -1
  89. package/dist/cjs/src/abstract/tokocrypto.js +1 -1
  90. package/dist/cjs/src/abstract/tradeogre.js +1 -1
  91. package/dist/cjs/src/abstract/upbit.js +1 -1
  92. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  93. package/dist/cjs/src/abstract/whitebit.js +1 -1
  94. package/dist/cjs/src/abstract/woo.js +1 -1
  95. package/dist/cjs/src/abstract/woofipro.js +1 -1
  96. package/dist/cjs/src/abstract/xt.js +1 -1
  97. package/dist/cjs/src/abstract/yobit.js +1 -1
  98. package/dist/cjs/src/abstract/zaif.js +1 -1
  99. package/dist/cjs/src/abstract/zonda.js +1 -1
  100. package/dist/cjs/src/alpaca.js +1 -1
  101. package/dist/cjs/src/apex.js +1 -1
  102. package/dist/cjs/src/ascendex.js +1 -1
  103. package/dist/cjs/src/backpack.js +2280 -0
  104. package/dist/cjs/src/base/Exchange.js +164 -65
  105. package/dist/cjs/src/base/Precise.js +0 -6
  106. package/dist/cjs/src/base/errors.js +0 -6
  107. package/dist/cjs/src/base/functions/crypto.js +1 -1
  108. package/dist/cjs/src/base/functions/encode.js +9 -1
  109. package/dist/cjs/src/base/functions/misc.js +0 -1
  110. package/dist/cjs/src/base/functions/number.js +0 -6
  111. package/dist/cjs/src/base/functions/platform.js +0 -6
  112. package/dist/cjs/src/base/functions/rsa.js +14 -2
  113. package/dist/cjs/src/base/functions/string.js +0 -6
  114. package/dist/cjs/src/base/functions/throttle.js +1 -1
  115. package/dist/cjs/src/base/functions/time.js +0 -6
  116. package/dist/cjs/src/base/functions/totp.js +0 -1
  117. package/dist/cjs/src/base/functions/type.js +0 -6
  118. package/dist/cjs/src/base/functions.js +2 -1
  119. package/dist/cjs/src/base/ws/Cache.js +0 -6
  120. package/dist/cjs/src/base/ws/Client.js +0 -1
  121. package/dist/cjs/src/base/ws/Future.js +1 -1
  122. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  123. package/dist/cjs/src/base/ws/OrderBookSide.js +0 -6
  124. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  125. package/dist/cjs/src/bequant.js +1 -1
  126. package/dist/cjs/src/bigone.js +1 -1
  127. package/dist/cjs/src/binance.js +8 -5
  128. package/dist/cjs/src/binancecoinm.js +1 -1
  129. package/dist/cjs/src/binanceus.js +1 -1
  130. package/dist/cjs/src/binanceusdm.js +1 -1
  131. package/dist/cjs/src/bingx.js +1 -1
  132. package/dist/cjs/src/bit2c.js +1 -1
  133. package/dist/cjs/src/bitbank.js +2 -2
  134. package/dist/cjs/src/bitbns.js +1 -1
  135. package/dist/cjs/src/bitfinex.js +1 -1
  136. package/dist/cjs/src/bitflyer.js +1 -1
  137. package/dist/cjs/src/bitget.js +57 -10
  138. package/dist/cjs/src/bithumb.js +1 -1
  139. package/dist/cjs/src/bitmart.js +1 -1
  140. package/dist/cjs/src/bitmex.js +1 -1
  141. package/dist/cjs/src/bitopro.js +1 -1
  142. package/dist/cjs/src/bitrue.js +1 -1
  143. package/dist/cjs/src/bitso.js +1 -1
  144. package/dist/cjs/src/bitstamp.js +1 -1
  145. package/dist/cjs/src/bitteam.js +1 -1
  146. package/dist/cjs/src/bittrade.js +1 -1
  147. package/dist/cjs/src/bitvavo.js +8 -0
  148. package/dist/cjs/src/blockchaincom.js +1 -1
  149. package/dist/cjs/src/blofin.js +1 -1
  150. package/dist/cjs/src/btcalpha.js +1 -1
  151. package/dist/cjs/src/btcbox.js +1 -1
  152. package/dist/cjs/src/btcmarkets.js +1 -1
  153. package/dist/cjs/src/btcturk.js +1 -1
  154. package/dist/cjs/src/bybit.js +21 -7
  155. package/dist/cjs/src/cex.js +1 -1
  156. package/dist/cjs/src/coinbase.js +28 -10
  157. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  158. package/dist/cjs/src/coincatch.js +34 -21
  159. package/dist/cjs/src/coincheck.js +1 -1
  160. package/dist/cjs/src/coinex.js +1 -1
  161. package/dist/cjs/src/coinmate.js +1 -1
  162. package/dist/cjs/src/coinmetro.js +12 -1
  163. package/dist/cjs/src/coinone.js +1 -1
  164. package/dist/cjs/src/coinsph.js +0 -1
  165. package/dist/cjs/src/coinspot.js +1 -1
  166. package/dist/cjs/src/cryptocom.js +1 -1
  167. package/dist/cjs/src/cryptomus.js +1 -1
  168. package/dist/cjs/src/defx.js +1 -1
  169. package/dist/cjs/src/delta.js +2 -1
  170. package/dist/cjs/src/deribit.js +1 -1
  171. package/dist/cjs/src/derive.js +1 -1
  172. package/dist/cjs/src/digifinex.js +1 -1
  173. package/dist/cjs/src/exmo.js +1 -1
  174. package/dist/cjs/src/fmfwio.js +1 -1
  175. package/dist/cjs/src/foxbit.js +1 -1
  176. package/dist/cjs/src/gate.js +8 -2
  177. package/dist/cjs/src/gateio.js +1 -1
  178. package/dist/cjs/src/gemini.js +11 -6
  179. package/dist/cjs/src/hashkey.js +1 -1
  180. package/dist/cjs/src/hibachi.js +1 -1
  181. package/dist/cjs/src/hitbtc.js +0 -1
  182. package/dist/cjs/src/hollaex.js +1 -1
  183. package/dist/cjs/src/htx.js +1 -1
  184. package/dist/cjs/src/huobi.js +1 -1
  185. package/dist/cjs/src/hyperliquid.js +1 -1
  186. package/dist/cjs/src/independentreserve.js +1 -1
  187. package/dist/cjs/src/indodax.js +1 -1
  188. package/dist/cjs/src/kraken.js +1 -1
  189. package/dist/cjs/src/krakenfutures.js +2 -2
  190. package/dist/cjs/src/kucoin.js +1 -1
  191. package/dist/cjs/src/kucoinfutures.js +55 -6
  192. package/dist/cjs/src/latoken.js +1 -1
  193. package/dist/cjs/src/lbank.js +1 -1
  194. package/dist/cjs/src/luno.js +1 -1
  195. package/dist/cjs/src/mercado.js +1 -1
  196. package/dist/cjs/src/mexc.js +1 -1
  197. package/dist/cjs/src/modetrade.js +1 -1
  198. package/dist/cjs/src/myokx.js +1 -1
  199. package/dist/cjs/src/ndax.js +1 -1
  200. package/dist/cjs/src/novadax.js +1 -1
  201. package/dist/cjs/src/oceanex.js +1 -1
  202. package/dist/cjs/src/okcoin.js +1 -1
  203. package/dist/cjs/src/okx.js +27 -16
  204. package/dist/cjs/src/okxus.js +1 -1
  205. package/dist/cjs/src/onetrading.js +161 -66
  206. package/dist/cjs/src/oxfun.js +1 -1
  207. package/dist/cjs/src/p2b.js +1 -1
  208. package/dist/cjs/src/paradex.js +1 -1
  209. package/dist/cjs/src/paymium.js +1 -1
  210. package/dist/cjs/src/phemex.js +15 -9
  211. package/dist/cjs/src/poloniex.js +1 -1
  212. package/dist/cjs/src/pro/alpaca.js +1 -1
  213. package/dist/cjs/src/pro/apex.js +1 -1
  214. package/dist/cjs/src/pro/ascendex.js +1 -1
  215. package/dist/cjs/src/pro/backpack.js +1325 -0
  216. package/dist/cjs/src/pro/bequant.js +1 -1
  217. package/dist/cjs/src/pro/binance.js +9 -0
  218. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  219. package/dist/cjs/src/pro/binanceus.js +1 -1
  220. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  221. package/dist/cjs/src/pro/bingx.js +1 -1
  222. package/dist/cjs/src/pro/bitfinex.js +1 -1
  223. package/dist/cjs/src/pro/bitget.js +152 -26
  224. package/dist/cjs/src/pro/bithumb.js +1 -1
  225. package/dist/cjs/src/pro/bitmart.js +1 -1
  226. package/dist/cjs/src/pro/bitmex.js +1 -1
  227. package/dist/cjs/src/pro/bitrue.js +1 -1
  228. package/dist/cjs/src/pro/bitstamp.js +1 -1
  229. package/dist/cjs/src/pro/bitvavo.js +1 -1
  230. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  231. package/dist/cjs/src/pro/blofin.js +1 -1
  232. package/dist/cjs/src/pro/bybit.js +68 -9
  233. package/dist/cjs/src/pro/cex.js +1 -1
  234. package/dist/cjs/src/pro/coinbase.js +227 -1
  235. package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
  236. package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
  237. package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
  238. package/dist/cjs/src/pro/coincatch.js +1 -1
  239. package/dist/cjs/src/pro/coincheck.js +1 -1
  240. package/dist/cjs/src/pro/coinex.js +11 -12
  241. package/dist/cjs/src/pro/coinone.js +1 -1
  242. package/dist/cjs/src/pro/cryptocom.js +1 -1
  243. package/dist/cjs/src/pro/defx.js +1 -1
  244. package/dist/cjs/src/pro/deribit.js +1 -1
  245. package/dist/cjs/src/pro/exmo.js +1 -1
  246. package/dist/cjs/src/pro/gate.js +1 -1
  247. package/dist/cjs/src/pro/gateio.js +1 -1
  248. package/dist/cjs/src/pro/gemini.js +1 -1
  249. package/dist/cjs/src/pro/hashkey.js +1 -1
  250. package/dist/cjs/src/pro/hitbtc.js +1 -1
  251. package/dist/cjs/src/pro/hollaex.js +1 -1
  252. package/dist/cjs/src/pro/htx.js +1 -1
  253. package/dist/cjs/src/pro/huobi.js +1 -1
  254. package/dist/cjs/src/pro/hyperliquid.js +1 -1
  255. package/dist/cjs/src/pro/independentreserve.js +1 -1
  256. package/dist/cjs/src/pro/kraken.js +1 -1
  257. package/dist/cjs/src/pro/krakenfutures.js +1 -1
  258. package/dist/cjs/src/pro/kucoin.js +1 -1
  259. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  260. package/dist/cjs/src/pro/lbank.js +0 -1
  261. package/dist/cjs/src/pro/luno.js +1 -1
  262. package/dist/cjs/src/pro/mexc.js +1 -1
  263. package/dist/cjs/src/pro/myokx.js +1 -1
  264. package/dist/cjs/src/pro/ndax.js +1 -1
  265. package/dist/cjs/src/pro/okcoin.js +1 -1
  266. package/dist/cjs/src/pro/okx.js +1 -1
  267. package/dist/cjs/src/pro/okxus.js +1 -1
  268. package/dist/cjs/src/pro/onetrading.js +1 -1
  269. package/dist/cjs/src/pro/oxfun.js +1 -1
  270. package/dist/cjs/src/pro/p2b.js +1 -1
  271. package/dist/cjs/src/pro/paradex.js +1 -1
  272. package/dist/cjs/src/pro/phemex.js +1 -1
  273. package/dist/cjs/src/pro/poloniex.js +1 -1
  274. package/dist/cjs/src/pro/probit.js +1 -1
  275. package/dist/cjs/src/pro/tradeogre.js +1 -1
  276. package/dist/cjs/src/pro/upbit.js +1 -1
  277. package/dist/cjs/src/pro/whitebit.js +1 -1
  278. package/dist/cjs/src/pro/xt.js +1 -1
  279. package/dist/cjs/src/probit.js +1 -1
  280. package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +1 -0
  281. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +0 -6
  282. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  283. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  284. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +0 -1
  285. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +0 -1
  286. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +0 -1
  287. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +0 -1
  288. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +0 -1
  289. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -1
  290. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +0 -1
  291. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +0 -1
  292. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +0 -1
  293. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +0 -1
  294. package/dist/cjs/src/static_dependencies/ethers/fragments.js +0 -6
  295. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  296. package/dist/cjs/src/static_dependencies/ethers/index.js +10 -1
  297. package/dist/cjs/src/static_dependencies/ethers/interface.js +0 -6
  298. package/dist/cjs/src/static_dependencies/ethers/typed.js +0 -6
  299. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +13 -1
  300. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +6 -1
  301. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +9 -1
  302. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +0 -6
  303. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  304. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +7 -1
  305. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +5 -1
  306. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +0 -6
  307. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +8 -1
  308. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  309. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -1
  310. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -1
  311. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  312. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  313. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  314. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  315. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -1
  316. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  317. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  318. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  319. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  320. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  321. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  322. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  323. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +0 -6
  324. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  325. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  326. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  327. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -1
  328. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  329. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  330. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  331. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  332. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  333. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  334. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  335. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  336. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +0 -6
  337. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +0 -1
  338. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +0 -6
  339. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +0 -6
  340. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +0 -1
  341. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +0 -1
  342. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +0 -1
  343. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +0 -1
  344. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +0 -1
  345. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +0 -1
  346. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
  347. package/dist/cjs/src/static_dependencies/node-fetch/body.js +5 -1
  348. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +0 -1
  349. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +0 -6
  350. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -1
  351. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +5 -1
  352. package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -1
  353. package/dist/cjs/src/static_dependencies/node-fetch/request.js +7 -1
  354. package/dist/cjs/src/static_dependencies/node-fetch/response.js +5 -1
  355. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  356. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  357. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +0 -6
  358. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +0 -1
  359. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +0 -1
  360. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -1
  361. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -1
  362. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  363. package/dist/cjs/src/static_dependencies/scure-base/index.js +0 -6
  364. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  365. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  366. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +0 -6
  367. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  368. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  369. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +0 -6
  370. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +0 -6
  371. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +0 -6
  372. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  373. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  374. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  375. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -1
  376. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -1
  377. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  378. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  379. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  380. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -1
  381. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  382. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -1
  383. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -1
  384. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  385. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -1
  386. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -1
  387. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -1
  388. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  389. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +4 -1
  390. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +0 -1
  391. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +3 -1
  392. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +0 -1
  393. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +0 -1
  394. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +0 -1
  395. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +0 -1
  396. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  397. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +0 -6
  398. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  399. package/dist/cjs/src/timex.js +0 -1
  400. package/dist/cjs/src/tokocrypto.js +1 -1
  401. package/dist/cjs/src/tradeogre.js +1 -1
  402. package/dist/cjs/src/upbit.js +1 -1
  403. package/dist/cjs/src/wavesexchange.js +1 -1
  404. package/dist/cjs/src/whitebit.js +1 -1
  405. package/dist/cjs/src/woo.js +1 -1
  406. package/dist/cjs/src/woofipro.js +1 -1
  407. package/dist/cjs/src/xt.js +10 -1
  408. package/dist/cjs/src/yobit.js +10 -1
  409. package/dist/cjs/src/zaif.js +1 -1
  410. package/dist/cjs/src/zonda.js +1 -1
  411. package/js/ccxt.d.ts +8 -2
  412. package/js/ccxt.js +6 -8
  413. package/js/src/abstract/alpaca.js +0 -6
  414. package/js/src/abstract/apex.js +0 -6
  415. package/js/src/abstract/ascendex.js +0 -6
  416. package/js/src/abstract/backpack.d.ts +63 -0
  417. package/js/src/abstract/backpack.js +5 -0
  418. package/js/src/abstract/bequant.js +0 -6
  419. package/js/src/abstract/bigone.js +0 -6
  420. package/js/src/abstract/binance.js +0 -6
  421. package/js/src/abstract/binancecoinm.js +0 -6
  422. package/js/src/abstract/binanceus.js +0 -6
  423. package/js/src/abstract/binanceusdm.js +0 -6
  424. package/js/src/abstract/bingx.js +0 -6
  425. package/js/src/abstract/bit2c.js +0 -6
  426. package/js/src/abstract/bitbank.js +0 -6
  427. package/js/src/abstract/bitbns.js +0 -6
  428. package/js/src/abstract/bitfinex.js +0 -6
  429. package/js/src/abstract/bitflyer.js +0 -6
  430. package/js/src/abstract/bitget.js +0 -6
  431. package/js/src/abstract/bithumb.js +0 -6
  432. package/js/src/abstract/bitmart.js +0 -6
  433. package/js/src/abstract/bitmex.js +0 -6
  434. package/js/src/abstract/bitopro.js +0 -6
  435. package/js/src/abstract/bitrue.js +0 -6
  436. package/js/src/abstract/bitso.js +0 -6
  437. package/js/src/abstract/bitstamp.js +0 -6
  438. package/js/src/abstract/bitteam.js +0 -6
  439. package/js/src/abstract/bittrade.js +0 -6
  440. package/js/src/abstract/bitvavo.js +0 -6
  441. package/js/src/abstract/blockchaincom.js +0 -6
  442. package/js/src/abstract/blofin.js +0 -6
  443. package/js/src/abstract/btcalpha.js +0 -6
  444. package/js/src/abstract/btcbox.js +0 -6
  445. package/js/src/abstract/btcmarkets.js +0 -6
  446. package/js/src/abstract/btcturk.js +0 -6
  447. package/js/src/abstract/bybit.js +0 -6
  448. package/js/src/abstract/cex.js +0 -6
  449. package/js/src/abstract/coinbase.js +0 -6
  450. package/js/src/abstract/coinbaseadvanced.js +0 -6
  451. package/js/src/abstract/coinbaseexchange.js +0 -6
  452. package/js/src/abstract/coinbaseinternational.js +0 -6
  453. package/js/src/abstract/coincatch.js +0 -6
  454. package/js/src/abstract/coincheck.js +0 -6
  455. package/js/src/abstract/coinex.js +0 -6
  456. package/js/src/abstract/coinmate.js +0 -6
  457. package/js/src/abstract/coinmetro.js +0 -6
  458. package/js/src/abstract/coinone.js +0 -6
  459. package/js/src/abstract/coinsph.js +0 -6
  460. package/js/src/abstract/coinspot.js +0 -6
  461. package/js/src/abstract/cryptocom.js +0 -6
  462. package/js/src/abstract/cryptomus.js +0 -6
  463. package/js/src/abstract/defx.js +0 -6
  464. package/js/src/abstract/delta.js +0 -6
  465. package/js/src/abstract/deribit.js +0 -6
  466. package/js/src/abstract/derive.js +0 -6
  467. package/js/src/abstract/digifinex.js +0 -6
  468. package/js/src/abstract/exmo.js +0 -6
  469. package/js/src/abstract/fmfwio.js +0 -6
  470. package/js/src/abstract/foxbit.js +0 -6
  471. package/js/src/abstract/gate.js +0 -6
  472. package/js/src/abstract/gateio.js +0 -6
  473. package/js/src/abstract/gemini.js +0 -6
  474. package/js/src/abstract/hashkey.js +0 -6
  475. package/js/src/abstract/hibachi.js +0 -6
  476. package/js/src/abstract/hitbtc.js +0 -6
  477. package/js/src/abstract/hollaex.js +0 -6
  478. package/js/src/abstract/htx.js +0 -6
  479. package/js/src/abstract/huobi.js +0 -6
  480. package/js/src/abstract/hyperliquid.js +0 -6
  481. package/js/src/abstract/independentreserve.js +0 -6
  482. package/js/src/abstract/indodax.js +0 -6
  483. package/js/src/abstract/kraken.js +0 -6
  484. package/js/src/abstract/krakenfutures.js +0 -6
  485. package/js/src/abstract/kucoin.js +0 -6
  486. package/js/src/abstract/kucoinfutures.d.ts +1 -0
  487. package/js/src/abstract/kucoinfutures.js +0 -6
  488. package/js/src/abstract/latoken.js +0 -6
  489. package/js/src/abstract/lbank.js +0 -6
  490. package/js/src/abstract/luno.js +0 -6
  491. package/js/src/abstract/mercado.js +0 -6
  492. package/js/src/abstract/mexc.js +0 -6
  493. package/js/src/abstract/modetrade.js +0 -6
  494. package/js/src/abstract/myokx.d.ts +1 -0
  495. package/js/src/abstract/myokx.js +0 -6
  496. package/js/src/abstract/ndax.js +0 -6
  497. package/js/src/abstract/novadax.js +0 -6
  498. package/js/src/abstract/oceanex.js +0 -6
  499. package/js/src/abstract/okcoin.js +0 -6
  500. package/js/src/abstract/okx.d.ts +1 -0
  501. package/js/src/abstract/okx.js +0 -6
  502. package/js/src/abstract/okxus.d.ts +1 -0
  503. package/js/src/abstract/okxus.js +0 -6
  504. package/js/src/abstract/onetrading.js +0 -6
  505. package/js/src/abstract/oxfun.js +0 -6
  506. package/js/src/abstract/p2b.js +0 -6
  507. package/js/src/abstract/paradex.js +0 -6
  508. package/js/src/abstract/paymium.js +0 -6
  509. package/js/src/abstract/phemex.d.ts +1 -1
  510. package/js/src/abstract/phemex.js +0 -6
  511. package/js/src/abstract/poloniex.js +0 -6
  512. package/js/src/abstract/probit.js +0 -6
  513. package/js/src/abstract/timex.js +0 -6
  514. package/js/src/abstract/tokocrypto.js +0 -6
  515. package/js/src/abstract/tradeogre.js +0 -6
  516. package/js/src/abstract/upbit.js +0 -6
  517. package/js/src/abstract/wavesexchange.js +0 -6
  518. package/js/src/abstract/whitebit.js +0 -6
  519. package/js/src/abstract/woo.js +0 -6
  520. package/js/src/abstract/woofipro.js +0 -6
  521. package/js/src/abstract/xt.js +0 -6
  522. package/js/src/abstract/yobit.js +0 -6
  523. package/js/src/abstract/zaif.js +0 -6
  524. package/js/src/abstract/zonda.js +0 -6
  525. package/js/src/alpaca.js +0 -6
  526. package/js/src/apex.js +0 -6
  527. package/js/src/ascendex.js +0 -6
  528. package/js/src/backpack.d.ts +371 -0
  529. package/js/src/backpack.js +2273 -0
  530. package/js/src/base/Exchange.d.ts +43 -40
  531. package/js/src/base/Exchange.js +169 -75
  532. package/js/src/base/Precise.js +0 -6
  533. package/js/src/base/errorHierarchy.js +0 -6
  534. package/js/src/base/errors.js +0 -6
  535. package/js/src/base/functions/crypto.js +0 -6
  536. package/js/src/base/functions/encode.d.ts +2 -1
  537. package/js/src/base/functions/encode.js +8 -7
  538. package/js/src/base/functions/generic.js +0 -6
  539. package/js/src/base/functions/misc.js +0 -6
  540. package/js/src/base/functions/number.js +0 -6
  541. package/js/src/base/functions/platform.js +0 -6
  542. package/js/src/base/functions/rsa.js +16 -9
  543. package/js/src/base/functions/string.js +0 -6
  544. package/js/src/base/functions/throttle.js +0 -6
  545. package/js/src/base/functions/time.js +0 -6
  546. package/js/src/base/functions/totp.js +0 -6
  547. package/js/src/base/functions/type.js +0 -6
  548. package/js/src/base/functions.js +0 -6
  549. package/js/src/base/types.d.ts +1 -3
  550. package/js/src/base/types.js +0 -6
  551. package/js/src/base/ws/Cache.js +0 -6
  552. package/js/src/base/ws/Client.js +0 -6
  553. package/js/src/base/ws/Future.js +0 -6
  554. package/js/src/base/ws/OrderBook.js +0 -6
  555. package/js/src/base/ws/OrderBookSide.js +0 -6
  556. package/js/src/base/ws/WsClient.js +0 -6
  557. package/js/src/base/ws/functions.js +0 -6
  558. package/js/src/bequant.js +0 -6
  559. package/js/src/bigone.js +0 -6
  560. package/js/src/binance.d.ts +1 -1
  561. package/js/src/binance.js +7 -10
  562. package/js/src/binancecoinm.js +0 -6
  563. package/js/src/binanceus.js +0 -6
  564. package/js/src/binanceusdm.js +0 -6
  565. package/js/src/bingx.js +0 -6
  566. package/js/src/bit2c.js +0 -6
  567. package/js/src/bitbank.js +1 -7
  568. package/js/src/bitbns.js +0 -6
  569. package/js/src/bitfinex.js +0 -6
  570. package/js/src/bitflyer.js +0 -6
  571. package/js/src/bitget.d.ts +3 -1
  572. package/js/src/bitget.js +56 -15
  573. package/js/src/bithumb.js +0 -6
  574. package/js/src/bitmart.js +0 -6
  575. package/js/src/bitmex.js +0 -6
  576. package/js/src/bitopro.js +0 -6
  577. package/js/src/bitrue.js +0 -6
  578. package/js/src/bitso.js +0 -6
  579. package/js/src/bitstamp.js +0 -6
  580. package/js/src/bitteam.js +0 -6
  581. package/js/src/bittrade.js +0 -6
  582. package/js/src/bitvavo.js +8 -6
  583. package/js/src/blockchaincom.js +0 -6
  584. package/js/src/blofin.js +0 -6
  585. package/js/src/btcalpha.js +0 -6
  586. package/js/src/btcbox.js +0 -6
  587. package/js/src/btcmarkets.js +0 -6
  588. package/js/src/btcturk.js +0 -6
  589. package/js/src/bybit.js +20 -12
  590. package/js/src/cex.js +0 -6
  591. package/js/src/coinbase.d.ts +2 -2
  592. package/js/src/coinbase.js +28 -16
  593. package/js/src/coinbaseadvanced.js +0 -6
  594. package/js/src/coinbaseexchange.js +0 -6
  595. package/js/src/coinbaseinternational.js +0 -6
  596. package/js/src/coincatch.d.ts +2 -0
  597. package/js/src/coincatch.js +33 -26
  598. package/js/src/coincheck.js +0 -6
  599. package/js/src/coinex.js +0 -6
  600. package/js/src/coinmate.js +0 -6
  601. package/js/src/coinmetro.js +11 -6
  602. package/js/src/coinone.js +0 -6
  603. package/js/src/coinsph.js +0 -6
  604. package/js/src/coinspot.js +0 -6
  605. package/js/src/cryptocom.js +0 -6
  606. package/js/src/cryptomus.js +0 -6
  607. package/js/src/defx.js +0 -6
  608. package/js/src/delta.js +1 -6
  609. package/js/src/deribit.js +0 -6
  610. package/js/src/derive.js +0 -6
  611. package/js/src/digifinex.js +0 -6
  612. package/js/src/exmo.js +0 -6
  613. package/js/src/fmfwio.js +0 -6
  614. package/js/src/foxbit.js +0 -6
  615. package/js/src/gate.d.ts +6 -0
  616. package/js/src/gate.js +7 -7
  617. package/js/src/gateio.js +0 -6
  618. package/js/src/gemini.js +10 -11
  619. package/js/src/hashkey.js +0 -6
  620. package/js/src/hibachi.js +0 -6
  621. package/js/src/hitbtc.js +0 -6
  622. package/js/src/hollaex.js +0 -6
  623. package/js/src/htx.js +0 -6
  624. package/js/src/huobi.js +0 -6
  625. package/js/src/hyperliquid.js +0 -6
  626. package/js/src/independentreserve.js +0 -6
  627. package/js/src/indodax.js +0 -6
  628. package/js/src/kraken.js +0 -6
  629. package/js/src/krakenfutures.js +1 -7
  630. package/js/src/kucoin.js +0 -6
  631. package/js/src/kucoinfutures.d.ts +14 -1
  632. package/js/src/kucoinfutures.js +54 -11
  633. package/js/src/latoken.js +0 -6
  634. package/js/src/lbank.js +0 -6
  635. package/js/src/luno.js +0 -6
  636. package/js/src/mercado.js +0 -6
  637. package/js/src/mexc.js +0 -6
  638. package/js/src/modetrade.js +0 -6
  639. package/js/src/myokx.js +0 -6
  640. package/js/src/ndax.js +0 -6
  641. package/js/src/novadax.js +0 -6
  642. package/js/src/oceanex.js +0 -6
  643. package/js/src/okcoin.js +0 -6
  644. package/js/src/okx.js +26 -21
  645. package/js/src/okxus.js +0 -6
  646. package/js/src/onetrading.d.ts +1 -0
  647. package/js/src/onetrading.js +160 -71
  648. package/js/src/oxfun.js +0 -6
  649. package/js/src/p2b.js +0 -6
  650. package/js/src/paradex.js +0 -6
  651. package/js/src/paymium.js +0 -6
  652. package/js/src/phemex.d.ts +3 -3
  653. package/js/src/phemex.js +15 -15
  654. package/js/src/poloniex.js +0 -6
  655. package/js/src/pro/alpaca.js +0 -6
  656. package/js/src/pro/apex.js +0 -6
  657. package/js/src/pro/ascendex.js +0 -6
  658. package/js/src/pro/backpack.d.ts +264 -0
  659. package/js/src/pro/backpack.js +1318 -0
  660. package/js/src/pro/bequant.js +0 -6
  661. package/js/src/pro/binance.js +9 -6
  662. package/js/src/pro/binancecoinm.js +0 -6
  663. package/js/src/pro/binanceus.js +0 -6
  664. package/js/src/pro/binanceusdm.js +0 -6
  665. package/js/src/pro/bingx.js +0 -6
  666. package/js/src/pro/bitfinex.js +0 -6
  667. package/js/src/pro/bitget.d.ts +9 -1
  668. package/js/src/pro/bitget.js +151 -31
  669. package/js/src/pro/bithumb.js +0 -6
  670. package/js/src/pro/bitmart.js +0 -6
  671. package/js/src/pro/bitmex.js +0 -6
  672. package/js/src/pro/bitopro.js +0 -6
  673. package/js/src/pro/bitrue.js +0 -6
  674. package/js/src/pro/bitstamp.js +0 -6
  675. package/js/src/pro/bittrade.js +0 -6
  676. package/js/src/pro/bitvavo.js +0 -6
  677. package/js/src/pro/blockchaincom.js +0 -6
  678. package/js/src/pro/blofin.js +0 -6
  679. package/js/src/pro/bybit.d.ts +4 -0
  680. package/js/src/pro/bybit.js +67 -14
  681. package/js/src/pro/cex.js +0 -6
  682. package/js/src/pro/coinbase.d.ts +85 -0
  683. package/js/src/pro/coinbase.js +226 -6
  684. package/js/src/pro/coinbaseadvanced.js +0 -6
  685. package/js/src/pro/coinbaseexchange.js +0 -6
  686. package/js/src/pro/coinbaseinternational.js +0 -6
  687. package/js/src/pro/coincatch.js +0 -6
  688. package/js/src/pro/coincheck.js +0 -6
  689. package/js/src/pro/coinex.js +11 -18
  690. package/js/src/pro/coinone.js +0 -6
  691. package/js/src/pro/cryptocom.js +0 -6
  692. package/js/src/pro/defx.js +0 -6
  693. package/js/src/pro/deribit.js +0 -6
  694. package/js/src/pro/derive.js +0 -6
  695. package/js/src/pro/exmo.js +0 -6
  696. package/js/src/pro/gate.js +0 -6
  697. package/js/src/pro/gateio.js +0 -6
  698. package/js/src/pro/gemini.js +0 -6
  699. package/js/src/pro/hashkey.js +0 -6
  700. package/js/src/pro/hitbtc.js +0 -6
  701. package/js/src/pro/hollaex.js +0 -6
  702. package/js/src/pro/htx.js +0 -6
  703. package/js/src/pro/huobi.js +0 -6
  704. package/js/src/pro/hyperliquid.js +0 -6
  705. package/js/src/pro/independentreserve.js +0 -6
  706. package/js/src/pro/kraken.js +0 -6
  707. package/js/src/pro/krakenfutures.js +0 -6
  708. package/js/src/pro/kucoin.js +0 -6
  709. package/js/src/pro/kucoinfutures.js +0 -6
  710. package/js/src/pro/lbank.js +0 -6
  711. package/js/src/pro/luno.js +0 -6
  712. package/js/src/pro/mexc.js +0 -6
  713. package/js/src/pro/modetrade.js +0 -6
  714. package/js/src/pro/myokx.js +0 -6
  715. package/js/src/pro/ndax.js +0 -6
  716. package/js/src/pro/okcoin.js +0 -6
  717. package/js/src/pro/okx.js +0 -6
  718. package/js/src/pro/okxus.js +0 -6
  719. package/js/src/pro/onetrading.js +0 -6
  720. package/js/src/pro/oxfun.js +0 -6
  721. package/js/src/pro/p2b.js +0 -6
  722. package/js/src/pro/paradex.js +0 -6
  723. package/js/src/pro/phemex.js +0 -6
  724. package/js/src/pro/poloniex.js +0 -6
  725. package/js/src/pro/probit.js +0 -6
  726. package/js/src/pro/tradeogre.js +0 -6
  727. package/js/src/pro/upbit.js +0 -6
  728. package/js/src/pro/whitebit.js +0 -6
  729. package/js/src/pro/woo.js +0 -6
  730. package/js/src/pro/woofipro.js +0 -6
  731. package/js/src/pro/xt.js +0 -6
  732. package/js/src/probit.js +0 -6
  733. package/js/src/protobuf/mexc/compiled.cjs +0 -6
  734. package/js/src/static_dependencies/ethers/abi-coder.js +0 -6
  735. package/js/src/static_dependencies/ethers/address/address.js +0 -6
  736. package/js/src/static_dependencies/ethers/address/checks.js +0 -6
  737. package/js/src/static_dependencies/ethers/address/contract-address.js +0 -6
  738. package/js/src/static_dependencies/ethers/address/index.js +0 -6
  739. package/js/src/static_dependencies/ethers/bytes32.js +0 -6
  740. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  741. package/js/src/static_dependencies/ethers/coders/address.js +0 -6
  742. package/js/src/static_dependencies/ethers/coders/anonymous.js +0 -6
  743. package/js/src/static_dependencies/ethers/coders/array.js +0 -6
  744. package/js/src/static_dependencies/ethers/coders/boolean.js +0 -6
  745. package/js/src/static_dependencies/ethers/coders/bytes.js +0 -6
  746. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -6
  747. package/js/src/static_dependencies/ethers/coders/null.js +0 -6
  748. package/js/src/static_dependencies/ethers/coders/number.js +0 -6
  749. package/js/src/static_dependencies/ethers/coders/string.js +0 -6
  750. package/js/src/static_dependencies/ethers/coders/tuple.js +0 -6
  751. package/js/src/static_dependencies/ethers/fragments.js +0 -6
  752. package/js/src/static_dependencies/ethers/hash/index.js +0 -6
  753. package/js/src/static_dependencies/ethers/hash/solidity.js +0 -6
  754. package/js/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  755. package/js/src/static_dependencies/ethers/index.js +0 -6
  756. package/js/src/static_dependencies/ethers/interface.js +0 -6
  757. package/js/src/static_dependencies/ethers/typed.js +0 -6
  758. package/js/src/static_dependencies/ethers/utils/base58.js +0 -6
  759. package/js/src/static_dependencies/ethers/utils/base64-browser.js +0 -6
  760. package/js/src/static_dependencies/ethers/utils/base64.js +0 -6
  761. package/js/src/static_dependencies/ethers/utils/data.js +0 -6
  762. package/js/src/static_dependencies/ethers/utils/errors.js +0 -6
  763. package/js/src/static_dependencies/ethers/utils/events.js +0 -6
  764. package/js/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  765. package/js/src/static_dependencies/ethers/utils/index.js +0 -6
  766. package/js/src/static_dependencies/ethers/utils/maths.js +0 -6
  767. package/js/src/static_dependencies/ethers/utils/properties.js +0 -6
  768. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +0 -6
  769. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +0 -6
  770. package/js/src/static_dependencies/ethers/utils/rlp.js +0 -6
  771. package/js/src/static_dependencies/ethers/utils/units.js +0 -6
  772. package/js/src/static_dependencies/ethers/utils/utf8.js +0 -6
  773. package/js/src/static_dependencies/ethers/utils/uuid.js +0 -6
  774. package/js/src/static_dependencies/fflake/browser.js +0 -6
  775. package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -6
  776. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -6
  777. package/js/src/static_dependencies/jsencrypt/index.js +0 -6
  778. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -6
  779. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  780. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  781. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  782. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +0 -6
  783. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -6
  784. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -6
  785. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  786. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -6
  787. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -6
  788. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  789. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -6
  790. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  791. package/js/src/static_dependencies/messagepack/msgpack.js +0 -6
  792. package/js/src/static_dependencies/noble-curves/_shortw_utils.js +0 -6
  793. package/js/src/static_dependencies/noble-curves/abstract/curve.js +0 -6
  794. package/js/src/static_dependencies/noble-curves/abstract/edwards.js +0 -6
  795. package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -6
  796. package/js/src/static_dependencies/noble-curves/abstract/modular.js +0 -6
  797. package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +0 -6
  798. package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +0 -6
  799. package/js/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  800. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +0 -6
  801. package/js/src/static_dependencies/noble-curves/bn.js +0 -6
  802. package/js/src/static_dependencies/noble-curves/ed25519.js +0 -6
  803. package/js/src/static_dependencies/noble-curves/ed448.js +0 -6
  804. package/js/src/static_dependencies/noble-curves/index.js +0 -6
  805. package/js/src/static_dependencies/noble-curves/jubjub.js +0 -6
  806. package/js/src/static_dependencies/noble-curves/p256.js +0 -6
  807. package/js/src/static_dependencies/noble-curves/p384.js +0 -6
  808. package/js/src/static_dependencies/noble-curves/p521.js +0 -6
  809. package/js/src/static_dependencies/noble-curves/pasta.js +0 -6
  810. package/js/src/static_dependencies/noble-curves/secp256k1.js +0 -6
  811. package/js/src/static_dependencies/noble-hashes/_assert.js +0 -6
  812. package/js/src/static_dependencies/noble-hashes/_blake2.js +0 -6
  813. package/js/src/static_dependencies/noble-hashes/_sha2.js +0 -6
  814. package/js/src/static_dependencies/noble-hashes/_u64.js +0 -6
  815. package/js/src/static_dependencies/noble-hashes/argon2.js +0 -6
  816. package/js/src/static_dependencies/noble-hashes/blake2b.js +0 -6
  817. package/js/src/static_dependencies/noble-hashes/blake2s.js +0 -6
  818. package/js/src/static_dependencies/noble-hashes/blake3.js +0 -6
  819. package/js/src/static_dependencies/noble-hashes/crypto.js +0 -6
  820. package/js/src/static_dependencies/noble-hashes/cryptoNode.js +0 -6
  821. package/js/src/static_dependencies/noble-hashes/eskdf.js +0 -6
  822. package/js/src/static_dependencies/noble-hashes/hkdf.js +0 -6
  823. package/js/src/static_dependencies/noble-hashes/hmac.js +0 -6
  824. package/js/src/static_dependencies/noble-hashes/index.js +0 -6
  825. package/js/src/static_dependencies/noble-hashes/md5.js +0 -6
  826. package/js/src/static_dependencies/noble-hashes/pbkdf2.js +0 -6
  827. package/js/src/static_dependencies/noble-hashes/ripemd160.js +0 -6
  828. package/js/src/static_dependencies/noble-hashes/scrypt.js +0 -6
  829. package/js/src/static_dependencies/noble-hashes/sha1.js +0 -6
  830. package/js/src/static_dependencies/noble-hashes/sha256.js +0 -6
  831. package/js/src/static_dependencies/noble-hashes/sha3-addons.js +0 -6
  832. package/js/src/static_dependencies/noble-hashes/sha3.js +0 -6
  833. package/js/src/static_dependencies/noble-hashes/sha512.js +0 -6
  834. package/js/src/static_dependencies/noble-hashes/utils.js +0 -6
  835. package/js/src/static_dependencies/node-fetch/body.js +0 -6
  836. package/js/src/static_dependencies/node-fetch/errors/abort-error.js +0 -6
  837. package/js/src/static_dependencies/node-fetch/errors/base.js +0 -6
  838. package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -6
  839. package/js/src/static_dependencies/node-fetch/headers.js +0 -6
  840. package/js/src/static_dependencies/node-fetch/index.js +0 -6
  841. package/js/src/static_dependencies/node-fetch/request.js +0 -6
  842. package/js/src/static_dependencies/node-fetch/response.js +0 -6
  843. package/js/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  844. package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  845. package/js/src/static_dependencies/node-fetch/utils/is.js +0 -6
  846. package/js/src/static_dependencies/node-fetch/utils/referrer.js +0 -6
  847. package/js/src/static_dependencies/proxies/agent-base/helpers.js +0 -6
  848. package/js/src/static_dependencies/proxies/agent-base/index.js +0 -6
  849. package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -6
  850. package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -6
  851. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  852. package/js/src/static_dependencies/qs/formats.cjs +0 -6
  853. package/js/src/static_dependencies/qs/index.cjs +0 -6
  854. package/js/src/static_dependencies/qs/parse.cjs +0 -6
  855. package/js/src/static_dependencies/qs/stringify.cjs +0 -6
  856. package/js/src/static_dependencies/qs/utils.cjs +0 -6
  857. package/js/src/static_dependencies/scure-base/index.js +0 -6
  858. package/js/src/static_dependencies/scure-starknet/index.js +0 -6
  859. package/js/src/static_dependencies/starknet/constants.js +0 -6
  860. package/js/src/static_dependencies/starknet/index.js +0 -6
  861. package/js/src/static_dependencies/starknet/types/cairoEnum.js +0 -6
  862. package/js/src/static_dependencies/starknet/types/calldata.js +0 -6
  863. package/js/src/static_dependencies/starknet/types/index.js +0 -6
  864. package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  865. package/js/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  866. package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +0 -6
  867. package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +0 -6
  868. package/js/src/static_dependencies/starknet/types/lib/index.js +0 -6
  869. package/js/src/static_dependencies/starknet/types/typedData.js +0 -6
  870. package/js/src/static_dependencies/starknet/utils/address.js +0 -6
  871. package/js/src/static_dependencies/starknet/utils/assert.js +0 -6
  872. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +0 -6
  873. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +0 -6
  874. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +0 -6
  875. package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -6
  876. package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -6
  877. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  878. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  879. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  880. package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +0 -6
  881. package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -6
  882. package/js/src/static_dependencies/starknet/utils/calldata/index.js +0 -6
  883. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -6
  884. package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +0 -6
  885. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -6
  886. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  887. package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -6
  888. package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -6
  889. package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -6
  890. package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +0 -6
  891. package/js/src/static_dependencies/starknet/utils/calldata/validate.js +0 -6
  892. package/js/src/static_dependencies/starknet/utils/encode.js +0 -6
  893. package/js/src/static_dependencies/starknet/utils/hash/classHash.js +0 -6
  894. package/js/src/static_dependencies/starknet/utils/hash/index.js +0 -6
  895. package/js/src/static_dependencies/starknet/utils/merkle.js +0 -6
  896. package/js/src/static_dependencies/starknet/utils/num.js +0 -6
  897. package/js/src/static_dependencies/starknet/utils/selector.js +0 -6
  898. package/js/src/static_dependencies/starknet/utils/shortString.js +0 -6
  899. package/js/src/static_dependencies/starknet/utils/starknetId.js +0 -6
  900. package/js/src/static_dependencies/starknet/utils/typedData.js +0 -6
  901. package/js/src/static_dependencies/starknet/utils/uint256.js +0 -6
  902. package/js/src/static_dependencies/starknet/utils/url.js +0 -6
  903. package/js/src/static_dependencies/watchable/src/index.js +0 -6
  904. package/js/src/static_dependencies/watchable/src/types.js +0 -6
  905. package/js/src/static_dependencies/watchable/src/unpromise.js +0 -6
  906. package/js/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  907. package/js/src/timex.js +0 -6
  908. package/js/src/tokocrypto.js +0 -6
  909. package/js/src/tradeogre.js +0 -6
  910. package/js/src/upbit.js +0 -6
  911. package/js/src/wavesexchange.js +0 -6
  912. package/js/src/whitebit.js +0 -6
  913. package/js/src/woo.js +0 -6
  914. package/js/src/woofipro.js +0 -6
  915. package/js/src/xt.d.ts +1 -0
  916. package/js/src/xt.js +9 -6
  917. package/js/src/yobit.js +9 -6
  918. package/js/src/zaif.js +0 -6
  919. package/js/src/zonda.js +0 -6
  920. package/package.json +3 -3
@@ -1,17 +1,11 @@
1
1
  // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
- // ----------------------------------------------------------------------------
8
- /* eslint-disable */
9
2
  import * as functions from './functions.js';
10
- const { isNode, selfIsDefined, deepExtend, extend, clone, flatten, unique, indexBy, sortBy, sortBy2, safeFloat2, groupBy, aggregate, uuid, unCamelCase, precisionFromString, Throttler, capitalize, now, decimalToPrecision, safeValue, safeValue2, safeString, safeString2, seconds, milliseconds, binaryToBase16, numberToBE, base16ToBinary, iso8601, omit, isJsonEncodedObject, safeInteger, sum, omitZero, implodeParams, extractParams, json, merge, binaryConcat, hash, ecdsa, arrayConcat, encode, urlencode, hmac, numberToString, roundTimeframe, parseTimeframe, safeInteger2, safeStringLower, parse8601, yyyymmdd, safeStringUpper, safeTimestamp, binaryConcatArray, uuidv1, numberToLE, ymdhms, stringToBase64, decode, uuid22, safeIntegerProduct2, safeIntegerProduct, safeStringLower2, yymmdd, base58ToBinary, binaryToBase58, safeTimestamp2, rawencode, keysort, sort, inArray, isEmpty, ordered, filterBy, uuid16, safeFloat, base64ToBinary, safeStringUpper2, urlencodeWithArrayRepeat, microseconds, binaryToBase64, strip, toArray, safeFloatN, safeIntegerN, safeIntegerProductN, safeTimestampN, safeValueN, safeStringN, safeStringLowerN, safeStringUpperN, urlencodeNested, urlencodeBase64, parseDate, ymd, base64ToString, crc32, packb, TRUNCATE, ROUND, DECIMAL_PLACES, NO_PADDING, TICK_SIZE, SIGNIFICANT_DIGITS, sleep } = functions;
11
- import { keys as keysFunc, values as valuesFunc, vwap as vwapFunc } from './functions.js';
3
+ import { keys as keysFunc, values as valuesFunc,
4
+ // inArray as inArrayFunc,
5
+ vwap as vwapFunc, } from './functions.js';
12
6
  // import exceptions from "./errors.js"
13
7
  import { // eslint-disable-line object-curly-newline
14
- ExchangeError, BadSymbol, NullResponse, InvalidAddress, InvalidOrder, NotSupported, OperationFailed, BadResponse, AuthenticationError, DDoSProtection, RequestTimeout, NetworkError, InvalidProxySettings, ExchangeNotAvailable, ArgumentsRequired, RateLimitExceeded, BadRequest, UnsubscribeError, ExchangeClosedByUser } from "./errors.js";
8
+ ExchangeError, BadSymbol, NullResponse, InvalidAddress, InvalidOrder, NotSupported, OperationFailed, BadResponse, AuthenticationError, DDoSProtection, RequestTimeout, NetworkError, InvalidProxySettings, ExchangeNotAvailable, ArgumentsRequired, RateLimitExceeded, BadRequest, UnsubscribeError, ExchangeClosedByUser, } from './errors.js';
15
9
  import { Precise } from './Precise.js';
16
10
  //-----------------------------------------------------------------------------
17
11
  import WsClient from './ws/WsClient.js';
@@ -23,28 +17,31 @@ import { axolotl } from './functions/crypto.js';
23
17
  import totp from './functions/totp.js';
24
18
  import ethers from '../static_dependencies/ethers/index.js';
25
19
  import { TypedDataEncoder } from '../static_dependencies/ethers/hash/index.js';
26
- import { SecureRandom } from "../static_dependencies/jsencrypt/lib/jsbn/rng.js";
20
+ import { SecureRandom } from '../static_dependencies/jsencrypt/lib/jsbn/rng.js';
27
21
  import { getStarkKey, ethSigToPrivate, sign as starknetCurveSign } from '../static_dependencies/scure-starknet/index.js';
28
22
  import init, * as zklink from '../static_dependencies/zklink/zklink-sdk-web.js';
29
23
  import * as Starknet from '../static_dependencies/starknet/index.js';
30
24
  import { sha256 } from '../static_dependencies/noble-hashes/sha256.js';
25
+ const { isNode, selfIsDefined, deepExtend, extend, clone, flatten, unique, indexBy, sortBy, sortBy2, safeFloat2, groupBy, aggregate, uuid, unCamelCase, precisionFromString, Throttler, capitalize, now, decimalToPrecision, safeValue, safeValue2, safeString, safeString2, seconds, milliseconds, binaryToBase16, numberToBE, base16ToBinary, iso8601, omit, isJsonEncodedObject, safeInteger, sum, omitZero, implodeParams, extractParams, json, merge, binaryConcat, hash,
26
+ // ecdsa,
27
+ arrayConcat, encode, urlencode, hmac, numberToString, roundTimeframe, parseTimeframe, safeInteger2, safeStringLower, parse8601, yyyymmdd, safeStringUpper, safeTimestamp, binaryConcatArray, uuidv1, numberToLE, ymdhms, stringToBase64, decode, uuid22, safeIntegerProduct2, safeIntegerProduct, safeStringLower2, yymmdd, base58ToBinary, binaryToBase58, safeTimestamp2, rawencode, keysort, sort, inArray, isEmpty, ordered, filterBy, uuid16, safeFloat, base64ToBinary, safeStringUpper2, urlencodeWithArrayRepeat, microseconds, binaryToBase64, strip, toArray, safeFloatN, safeIntegerN, safeIntegerProductN, safeTimestampN, safeValueN, safeStringN, safeStringLowerN, safeStringUpperN, urlencodeNested, urlencodeBase64, parseDate, ymd, base64ToString, crc32, packb, TRUNCATE, ROUND, DECIMAL_PLACES, NO_PADDING, TICK_SIZE, SIGNIFICANT_DIGITS, sleep, } = functions;
31
28
  // ----------------------------------------------------------------------------
32
29
  let protobufMexc = undefined;
33
30
  (async () => {
34
31
  try {
35
32
  protobufMexc = await import('../protobuf/mexc/compiled.cjs');
36
33
  }
37
- catch { }
34
+ catch {
35
+ // TODO: handle error
36
+ }
38
37
  })();
39
- //-----------------------------------------------------------------------------
38
+ // -----------------------------------------------------------------------------
40
39
  /**
41
40
  * @class Exchange
42
41
  */
43
42
  export default class Exchange {
44
43
  constructor(userConfig = {}) {
45
44
  this.isSandboxModeEnabled = false;
46
- this.throttleProp = undefined;
47
- this.sleep = sleep;
48
45
  this.api = undefined;
49
46
  this.certified = false;
50
47
  this.pro = false;
@@ -69,6 +66,7 @@ export default class Exchange {
69
66
  this.minFundingAddressLength = 1; // used in checkAddress
70
67
  this.substituteCommonCurrencyCodes = true; // reserved
71
68
  this.quoteJsonNumbers = true; // treat numbers in json as quoted precise strings
69
+ // eslint-disable-next-line no-unused-vars
72
70
  this.number = Number; // or String (a pointer to a function)
73
71
  this.handleContentTypeApplicationZip = false;
74
72
  // whether fees should be summed by currency code
@@ -134,11 +132,19 @@ export default class Exchange {
134
132
  this.name = undefined;
135
133
  this.targetAccount = undefined;
136
134
  this.stablePairs = {};
135
+ this.httpProxyAgentModule = undefined;
136
+ this.httpsProxyAgentModule = undefined;
137
+ this.socksProxyAgentModule = undefined;
138
+ this.socksProxyAgentModuleChecked = false;
139
+ this.proxyDictionaries = {};
140
+ this.proxiesModulesLoading = undefined;
141
+ this.alias = false;
137
142
  // WS/PRO options
138
143
  this.clients = {};
139
144
  this.newUpdates = true;
140
145
  this.streaming = {};
141
- this.alias = false;
146
+ // INTERNAL METHODS
147
+ this.sleep = sleep;
142
148
  this.deepExtend = deepExtend;
143
149
  this.deepExtendSafe = deepExtend;
144
150
  this.isNode = isNode;
@@ -241,12 +247,6 @@ export default class Exchange {
241
247
  this.crc32 = crc32;
242
248
  this.packb = packb;
243
249
  this.urlencodeBase64 = urlencodeBase64;
244
- this.httpProxyAgentModule = undefined;
245
- this.httpsProxyAgentModule = undefined;
246
- this.socksProxyAgentModule = undefined;
247
- this.socksProxyAgentModuleChecked = false;
248
- this.proxyDictionaries = {};
249
- this.proxiesModulesLoading = undefined;
250
250
  Object.assign(this, functions);
251
251
  //
252
252
  // if (isNode) {
@@ -368,7 +368,14 @@ export default class Exchange {
368
368
  }
369
369
  checkRequiredVersion(requiredVersion, error = true) {
370
370
  let result = true;
371
- const [major1, minor1, patch1] = requiredVersion.split('.'), [major2, minor2, patch2] = Exchange.ccxtVersion.split('.'), intMajor1 = this.parseToInt(major1), intMinor1 = this.parseToInt(minor1), intPatch1 = this.parseToInt(patch1), intMajor2 = this.parseToInt(major2), intMinor2 = this.parseToInt(minor2), intPatch2 = this.parseToInt(patch2);
371
+ const [major1, minor1, patch1] = requiredVersion.split('.');
372
+ const [major2, minor2, patch2] = Exchange.ccxtVersion.split('.');
373
+ const intMajor1 = this.parseToInt(major1);
374
+ const intMinor1 = this.parseToInt(minor1);
375
+ const intPatch1 = this.parseToInt(patch1);
376
+ const intMajor2 = this.parseToInt(major2);
377
+ const intMinor2 = this.parseToInt(minor2);
378
+ const intPatch2 = this.parseToInt(patch2);
372
379
  if (intMajor1 > intMajor2) {
373
380
  result = false;
374
381
  }
@@ -437,7 +444,7 @@ export default class Exchange {
437
444
  this.defineRestApiEndpoint(methodName, uppercaseMethod, lowercaseMethod, camelcaseMethod, path, paths, config);
438
445
  }
439
446
  else if (typeof config === 'number') {
440
- this.defineRestApiEndpoint(methodName, uppercaseMethod, lowercaseMethod, camelcaseMethod, path, paths, { cost: config });
447
+ this.defineRestApiEndpoint(methodName, uppercaseMethod, lowercaseMethod, camelcaseMethod, path, paths, { 'cost': config });
441
448
  }
442
449
  else {
443
450
  throw new NotSupported(this.id + ' defineRestApi() API format is not supported, API leafs must strings, objects or numbers');
@@ -450,6 +457,7 @@ export default class Exchange {
450
457
  }
451
458
  }
452
459
  log(...args) {
460
+ // eslint-disable-next-line no-console
453
461
  console.log(...args);
454
462
  }
455
463
  async loadProxyModules() {
@@ -470,16 +478,20 @@ export default class Exchange {
470
478
  // @ts-ignore
471
479
  this.httpProxyAgentModule = await import(/* webpackIgnore: true */ 'http-proxy-agent');
472
480
  // @ts-ignore
473
- this.httpsProxyAgentModule = await import(/* webpackIgnore: true */ 'https-proxy-agent');
481
+ this.httpsProxyAgentModule = await import(/* webpackIgnore: true */ 'https-proxy-agent'); // eslint-disable-line
482
+ }
483
+ catch (err) {
484
+ // TODO: handle error
474
485
  }
475
- catch (e) { }
476
486
  }
477
487
  if (this.socksProxyAgentModuleChecked === false) {
478
488
  try {
479
489
  // @ts-ignore
480
490
  this.socksProxyAgentModule = await import(/* webpackIgnore: true */ 'socks-proxy-agent');
481
491
  }
482
- catch (e) { }
492
+ catch (e) {
493
+ // TODO: handle error
494
+ }
483
495
  this.socksProxyAgentModuleChecked = true;
484
496
  }
485
497
  })();
@@ -579,7 +591,7 @@ export default class Exchange {
579
591
  if (!this.nodeHttpModuleLoaded) {
580
592
  this.nodeHttpModuleLoaded = true;
581
593
  const httpsModule = await import(/* webpackIgnore: true */ 'node:https');
582
- this.httpsAgent = new httpsModule.Agent({ keepAlive: true });
594
+ this.httpsAgent = new httpsModule.Agent({ 'keepAlive': true });
583
595
  }
584
596
  }
585
597
  // ##### PROXY & HEADERS #####
@@ -623,7 +635,7 @@ export default class Exchange {
623
635
  headers = this.setHeaders(headers);
624
636
  // log
625
637
  if (this.verbose) {
626
- this.log("fetch Request:\n", this.id, method, url, "\nRequestHeaders:\n", headers, "\nRequestBody:\n", body, "\n");
638
+ this.log('fetch Request:\n', this.id, method, url, '\nRequestHeaders:\n', headers, '\nRequestBody:\n', body, '\n');
627
639
  }
628
640
  // end of proxies & headers
629
641
  if (this.fetchImplementation === undefined) {
@@ -632,16 +644,16 @@ export default class Exchange {
632
644
  this.agent = this.httpsAgent;
633
645
  }
634
646
  try {
635
- const module = await import(/* webpackIgnore: true */ '../static_dependencies/node-fetch/index.js');
636
- this.AbortError = module.AbortError;
637
- this.fetchImplementation = module.default;
638
- this.FetchError = module.FetchError;
647
+ const nodeFetchModule = await import(/* webpackIgnore: true */ '../static_dependencies/node-fetch/index.js');
648
+ this.AbortError = nodeFetchModule.AbortError;
649
+ this.fetchImplementation = nodeFetchModule.default;
650
+ this.FetchError = nodeFetchModule.FetchError;
639
651
  }
640
652
  catch (e) {
641
653
  // some users having issues with dynamic imports (https://github.com/ccxt/ccxt/pull/20687)
642
654
  // so let them to fallback to node's native fetch
643
655
  if (typeof fetch === 'function') {
644
- this.fetchImplementation = fetch;
656
+ this.fetchImplementation = fetch; // eslint-disable-line
645
657
  // as it's browser-compatible implementation ( https://nodejs.org/dist/latest-v20.x/docs/api/globals.html#fetch )
646
658
  // it throws same error types
647
659
  this.AbortError = DOMException;
@@ -653,6 +665,7 @@ export default class Exchange {
653
665
  }
654
666
  }
655
667
  else {
668
+ // eslint-disable-next-line
656
669
  this.fetchImplementation = (selfIsDefined()) ? self.fetch : fetch;
657
670
  this.AbortError = DOMException;
658
671
  this.FetchError = TypeError;
@@ -661,7 +674,7 @@ export default class Exchange {
661
674
  // fetchImplementation cannot be called on this. in browsers:
662
675
  // TypeError Failed to execute 'fetch' on 'Window': Illegal invocation
663
676
  const fetchImplementation = this.fetchImplementation;
664
- const params = { method, headers, body, timeout: this.timeout };
677
+ const params = { method, headers, body, 'timeout': this.timeout };
665
678
  if (this.agent) {
666
679
  params['agent'] = this.agent;
667
680
  }
@@ -724,14 +737,14 @@ export default class Exchange {
724
737
  this.last_http_response = responseBuffer;
725
738
  }
726
739
  if (this.verbose) {
727
- this.log("handleRestResponse:\n", this.id, method, url, response.status, response.statusText, "\nResponseHeaders:\n", responseHeaders, "ZIP redacted", "\n");
740
+ this.log('handleRestResponse:\n', this.id, method, url, response.status, response.statusText, '\nResponseHeaders:\n', responseHeaders, 'ZIP redacted', '\n');
728
741
  }
729
742
  // no error handler needed, because it would not be a zip response in case of an error
730
743
  return responseBuffer;
731
744
  }
732
745
  return response.text().then((responseBody) => {
733
746
  const bodyText = this.onRestResponse(response.status, response.statusText, url, method, responseHeaders, responseBody, requestHeaders, requestBody);
734
- const json = this.parseJson(bodyText);
747
+ const parsedBody = this.parseJson(bodyText);
735
748
  if (this.enableLastResponseHeaders) {
736
749
  this.last_response_headers = responseHeaders;
737
750
  }
@@ -739,19 +752,19 @@ export default class Exchange {
739
752
  this.last_http_response = responseBody;
740
753
  }
741
754
  if (this.enableLastJsonResponse) {
742
- this.last_json_response = json;
755
+ this.last_json_response = parsedBody;
743
756
  }
744
757
  if (this.verbose) {
745
- this.log("handleRestResponse:\n", this.id, method, url, response.status, response.statusText, "\nResponseHeaders:\n", responseHeaders, "\nResponseBody:\n", responseBody, "\n");
758
+ this.log('handleRestResponse:\n', this.id, method, url, response.status, response.statusText, '\nResponseHeaders:\n', responseHeaders, '\nResponseBody:\n', responseBody, '\n');
746
759
  }
747
- const skipFurtherErrorHandling = this.handleErrors(response.status, response.statusText, url, method, responseHeaders, responseBody, json, requestHeaders, requestBody);
760
+ const skipFurtherErrorHandling = this.handleErrors(response.status, response.statusText, url, method, responseHeaders, responseBody, parsedBody, requestHeaders, requestBody);
748
761
  if (!skipFurtherErrorHandling) {
749
762
  this.handleHttpStatusCode(response.status, response.statusText, url, method, responseBody);
750
763
  }
751
- if (json && !Array.isArray(json) && this.returnResponseHeaders) {
752
- json['responseHeaders'] = responseHeaders;
764
+ if (parsedBody && !Array.isArray(parsedBody) && this.returnResponseHeaders) {
765
+ parsedBody['responseHeaders'] = responseHeaders;
753
766
  }
754
- return json || responseBody;
767
+ return parsedBody || responseBody;
755
768
  });
756
769
  }
757
770
  onRestResponse(statusCode, statusText, url, method, responseHeaders, responseBody, requestHeaders, requestBody) {
@@ -811,31 +824,38 @@ export default class Exchange {
811
824
  // currencies are returned as a dict
812
825
  // this is for historical reasons
813
826
  // and may be changed for consistency later
814
- return new Promise((resolve, reject) => resolve(this.currencies));
827
+ return new Promise((resolve, reject) => {
828
+ resolve(this.currencies);
829
+ });
815
830
  }
816
831
  async fetchCurrenciesWs(params = {}) {
817
832
  // markets are returned as a list
818
833
  // currencies are returned as a dict
819
834
  // this is for historical reasons
820
835
  // and may be changed for consistency later
821
- return new Promise((resolve, reject) => resolve(this.currencies));
836
+ return new Promise((resolve, reject) => {
837
+ resolve(this.currencies);
838
+ });
822
839
  }
823
840
  async fetchMarkets(params = {}) {
824
841
  // markets are returned as a list
825
842
  // currencies are returned as a dict
826
843
  // this is for historical reasons
827
844
  // and may be changed for consistency later
828
- return new Promise((resolve, reject) => resolve(Object.values(this.markets)));
845
+ return new Promise((resolve, reject) => {
846
+ resolve(Object.values(this.markets));
847
+ });
829
848
  }
830
849
  async fetchMarketsWs(params = {}) {
831
850
  // markets are returned as a list
832
851
  // currencies are returned as a dict
833
852
  // this is for historical reasons
834
853
  // and may be changed for consistency later
835
- return new Promise((resolve, reject) => resolve(Object.values(this.markets)));
854
+ return new Promise((resolve, reject) => {
855
+ resolve(Object.values(this.markets));
856
+ });
836
857
  }
837
858
  checkRequiredDependencies() {
838
- return;
839
859
  }
840
860
  parseNumber(value, d = undefined) {
841
861
  if (value === undefined) {
@@ -852,7 +872,7 @@ export default class Exchange {
852
872
  return this.number(numberToString(parseFloat(numberNormalized)));
853
873
  }
854
874
  const result = this.number(numberNormalized);
855
- return isNaN(result) ? d : result;
875
+ return Number.isNaN(result) ? d : result;
856
876
  }
857
877
  catch (e) {
858
878
  return d;
@@ -934,6 +954,7 @@ export default class Exchange {
934
954
  const chosenAgent = this.setProxyAgents(httpProxy, httpsProxy, socksProxy);
935
955
  // part only for node-js
936
956
  const httpProxyAgent = this.getHttpAgentIfNeeded(url);
957
+ // eslint-disable-next-line no-nested-ternary
937
958
  const finalAgent = chosenAgent ? chosenAgent : (httpProxyAgent ? httpProxyAgent : this.agent);
938
959
  //
939
960
  const options = this.deepExtend(this.streaming, {
@@ -983,10 +1004,10 @@ export default class Exchange {
983
1004
  // | |
984
1005
  // subscribe -----→ receive
985
1006
  //
986
- const future = Future.race(messageHashes.map(messageHash => client.future(messageHash)));
1007
+ const future = Future.race(messageHashes.map((messageHash) => client.future(messageHash)));
987
1008
  // read and write subscription, this is done before connecting the client
988
1009
  // to avoid race conditions when other parts of the code read or write to the client.subscriptions
989
- let missingSubscriptions = [];
1010
+ const missingSubscriptions = [];
990
1011
  if (subscribeHashes !== undefined) {
991
1012
  for (let i = 0; i < subscribeHashes.length; i++) {
992
1013
  const subscribeHash = subscribeHashes[i];
@@ -1236,18 +1257,18 @@ export default class Exchange {
1236
1257
  const privateKey = ethSigToPrivate(signature);
1237
1258
  const publicKey = getStarkKey(privateKey);
1238
1259
  const callData = Starknet.CallData.compile({
1239
- implementation: accountClassHash,
1240
- selector: Starknet.hash.getSelectorFromName('initialize'),
1241
- calldata: Starknet.CallData.compile({
1242
- signer: publicKey,
1243
- guardian: '0',
1260
+ 'implementation': accountClassHash,
1261
+ 'selector': Starknet.hash.getSelectorFromName('initialize'),
1262
+ 'calldata': Starknet.CallData.compile({
1263
+ 'signer': publicKey,
1264
+ 'guardian': '0',
1244
1265
  }),
1245
1266
  });
1246
1267
  const address = Starknet.hash.calculateContractAddressFromHash(publicKey, accountProxyClassHash, callData, 0);
1247
1268
  return {
1248
1269
  privateKey,
1249
1270
  publicKey,
1250
- address
1271
+ address,
1251
1272
  };
1252
1273
  }
1253
1274
  starknetEncodeStructuredData(domain, messageTypes, messageData, address) {
@@ -1260,9 +1281,9 @@ export default class Exchange {
1260
1281
  'primaryType': types[0],
1261
1282
  'types': this.extend({
1262
1283
  'StarkNetDomain': [
1263
- { 'name': "name", 'type': "felt" },
1264
- { 'name': "chainId", 'type': "felt" },
1265
- { 'name': "version", 'type': "felt" },
1284
+ { 'name': 'name', 'type': 'felt' },
1285
+ { 'name': 'chainId', 'type': 'felt' },
1286
+ { 'name': 'version', 'type': 'felt' },
1266
1287
  ],
1267
1288
  }, messageTypes),
1268
1289
  'message': messageData,
@@ -1270,9 +1291,9 @@ export default class Exchange {
1270
1291
  const msgHash = Starknet.typedData.getMessageHash(request, address);
1271
1292
  return msgHash;
1272
1293
  }
1273
- starknetSign(hash, pri) {
1294
+ starknetSign(msgHash, pri) {
1274
1295
  // TODO: unify to ecdsa
1275
- const signature = starknetCurveSign(hash.replace('0x', ''), pri.slice(-64));
1296
+ const signature = starknetCurveSign(msgHash.replace('0x', ''), pri.slice(-64));
1276
1297
  return this.json([signature.r.toString(), signature.s.toString()]);
1277
1298
  }
1278
1299
  async getZKContractSignatureObj(seed, params = {}) {
@@ -1286,10 +1307,10 @@ export default class Exchange {
1286
1307
  await init();
1287
1308
  const _signer = zklink.newRpcSignerWithProvider({});
1288
1309
  await _signer.initZklinkSigner(seed);
1289
- let tx_builder = new zklink.ContractBuilder(accountId, 0, slotId, nonce, this.safeInteger(params, 'pairId'), Precise.stringMul(this.safeString(params, 'size'), '1e18'), Precise.stringMul(this.safeString(params, 'price'), '1e18'), this.safeString(params, 'direction') === 'BUY', parseInt(Precise.stringMul(this.safeString(params, 'makerFeeRate'), '10000')), parseInt(Precise.stringMul(this.safeString(params, 'takerFeeRate'), '10000')), false);
1290
- let contractor = zklink.newContract(tx_builder);
1291
- //const signer = ZkLinkSigner.ethSig(seed);
1292
- //const signer = new Signer(seed);
1310
+ const tx_builder = new zklink.ContractBuilder(accountId, 0, slotId, nonce, this.safeInteger(params, 'pairId'), Precise.stringMul(this.safeString(params, 'size'), '1e18'), Precise.stringMul(this.safeString(params, 'price'), '1e18'), this.safeString(params, 'direction') === 'BUY', parseInt(Precise.stringMul(this.safeString(params, 'makerFeeRate'), '10000')), parseInt(Precise.stringMul(this.safeString(params, 'takerFeeRate'), '10000')), false);
1311
+ const contractor = zklink.newContract(tx_builder);
1312
+ // const signer = ZkLinkSigner.ethSig(seed);
1313
+ // const signer = new Signer(seed);
1293
1314
  contractor?.sign(_signer?.getZkLinkSigner());
1294
1315
  const tx = contractor.jsValue();
1295
1316
  const zkSign = tx?.signature?.signature;
@@ -1305,10 +1326,10 @@ export default class Exchange {
1305
1326
  const formattedNonce = BigInt('0x' + this.remove0xPrefix(this.hash(this.encode(nonce), sha256, 'hex'))).toString();
1306
1327
  nonce = Precise.stringMod(formattedNonce, formattedUint32);
1307
1328
  }
1308
- let tx_builder = new zklink.TransferBuilder(this.safeNumber(params, 'zkAccountId', 0), this.safeString(params, 'receiverAddress'), this.safeNumber(params, 'subAccountId', 0), this.safeNumber(params, 'receiverSubAccountId', 0), this.safeNumber(params, 'tokenId', 0), this.safeString(params, 'fee', '0'), this.safeString(params, 'amount', '0'), this.parseToInt(nonce), this.safeNumber(params, 'timestampSeconds', 0));
1309
- let contractor = zklink.newTransfer(tx_builder);
1310
- //const signer = ZkLinkSigner.ethSig(seed);
1311
- //const signer = new Signer(seed);
1329
+ const tx_builder = new zklink.TransferBuilder(this.safeNumber(params, 'zkAccountId', 0), this.safeString(params, 'receiverAddress'), this.safeNumber(params, 'subAccountId', 0), this.safeNumber(params, 'receiverSubAccountId', 0), this.safeNumber(params, 'tokenId', 0), this.safeString(params, 'fee', '0'), this.safeString(params, 'amount', '0'), this.parseToInt(nonce), this.safeNumber(params, 'timestampSeconds', 0));
1330
+ const contractor = zklink.newTransfer(tx_builder);
1331
+ // const signer = ZkLinkSigner.ethSig(seed);
1332
+ // const signer = new Signer(seed);
1312
1333
  contractor?.sign(_signer?.getZkLinkSigner());
1313
1334
  const tx = contractor.jsValue();
1314
1335
  const zkSign = tx?.signature?.signature;
@@ -2432,9 +2453,9 @@ export default class Exchange {
2432
2453
  parseToNumeric(number) {
2433
2454
  const stringVersion = this.numberToString(number); // this will convert 1.0 and 1 to "1" and 1.1 to "1.1"
2434
2455
  // keep this in mind:
2435
- // in JS: 1 == 1.0 is true; 1 === 1.0 is true
2456
+ // in JS: 1 === 1.0 is true
2436
2457
  // in Python: 1 == 1.0 is true
2437
- // in PHP 1 == 1.0 is true, but 1 === 1.0 is false.
2458
+ // in PHP: 1 == 1.0 is true, but 1 === 1.0 is false.
2438
2459
  if (stringVersion.indexOf('.') >= 0) {
2439
2460
  return parseFloat(stringVersion);
2440
2461
  }
@@ -2949,6 +2970,26 @@ export default class Exchange {
2949
2970
  this.codes = Object.keys(currenciesSortedByCode);
2950
2971
  return this.markets;
2951
2972
  }
2973
+ setMarketsFromExchange(sourceExchange) {
2974
+ // Validate that both exchanges are of the same type
2975
+ if (this.id !== sourceExchange.id) {
2976
+ throw new ArgumentsRequired(this.id + ' shareMarkets() can only share markets with exchanges of the same type (got ' + sourceExchange['id'] + ')');
2977
+ }
2978
+ // Validate that source exchange has loaded markets
2979
+ if (!sourceExchange.markets) {
2980
+ throw new ExchangeError('setMarketsFromExchange() source exchange must have loaded markets first. Can call by using loadMarkets function');
2981
+ }
2982
+ // Set all market-related data
2983
+ this.markets = sourceExchange.markets;
2984
+ this.markets_by_id = sourceExchange.markets_by_id;
2985
+ this.symbols = sourceExchange.symbols;
2986
+ this.ids = sourceExchange.ids;
2987
+ this.currencies = sourceExchange.currencies;
2988
+ this.baseCurrencies = sourceExchange.baseCurrencies;
2989
+ this.quoteCurrencies = sourceExchange.quoteCurrencies;
2990
+ this.codes = sourceExchange.codes;
2991
+ return this;
2992
+ }
2952
2993
  getDescribeForExtendedWsExchange(currentRestInstance, parentRestInstance, wsBaseDescribe) {
2953
2994
  const extendedRestDescribe = this.deepExtend(parentRestInstance.describe(), currentRestInstance.describe());
2954
2995
  const superWithRestDescribe = this.deepExtend(extendedRestDescribe, wsBaseDescribe);
@@ -4227,17 +4268,30 @@ export default class Exchange {
4227
4268
  }
4228
4269
  return result;
4229
4270
  }
4230
- parseTrades(trades, market = undefined, since = undefined, limit = undefined, params = {}) {
4271
+ parseTradesHelper(isWs, trades, market = undefined, since = undefined, limit = undefined, params = {}) {
4231
4272
  trades = this.toArray(trades);
4232
4273
  let result = [];
4233
4274
  for (let i = 0; i < trades.length; i++) {
4234
- const trade = this.extend(this.parseTrade(trades[i], market), params);
4275
+ let parsed = undefined;
4276
+ if (isWs) {
4277
+ parsed = this.parseWsTrade(trades[i], market);
4278
+ }
4279
+ else {
4280
+ parsed = this.parseTrade(trades[i], market);
4281
+ }
4282
+ const trade = this.extend(parsed, params);
4235
4283
  result.push(trade);
4236
4284
  }
4237
4285
  result = this.sortBy2(result, 'timestamp', 'id');
4238
4286
  const symbol = (market !== undefined) ? market['symbol'] : undefined;
4239
4287
  return this.filterBySymbolSinceLimit(result, symbol, since, limit);
4240
4288
  }
4289
+ parseTrades(trades, market = undefined, since = undefined, limit = undefined, params = {}) {
4290
+ return this.parseTradesHelper(false, trades, market, since, limit, params);
4291
+ }
4292
+ parseWsTrades(trades, market = undefined, since = undefined, limit = undefined, params = {}) {
4293
+ return this.parseTradesHelper(true, trades, market, since, limit, params);
4294
+ }
4241
4295
  parseTransactions(transactions, currency = undefined, since = undefined, limit = undefined, params = {}) {
4242
4296
  transactions = this.toArray(transactions);
4243
4297
  let result = [];
@@ -6193,6 +6247,35 @@ export default class Exchange {
6193
6247
  const symbol = (market === undefined) ? undefined : market['symbol'];
6194
6248
  return this.filterBySymbolSinceLimit(sorted, symbol, since, limit);
6195
6249
  }
6250
+ handleTriggerPricesAndParams(symbol, params, omitParams = true) {
6251
+ //
6252
+ const triggerPrice = this.safeString2(params, 'triggerPrice', 'stopPrice');
6253
+ let triggerPriceStr = undefined;
6254
+ const stopLossPrice = this.safeString(params, 'stopLossPrice');
6255
+ let stopLossPriceStr = undefined;
6256
+ const takeProfitPrice = this.safeString(params, 'takeProfitPrice');
6257
+ let takeProfitPriceStr = undefined;
6258
+ //
6259
+ if (triggerPrice !== undefined) {
6260
+ if (omitParams) {
6261
+ params = this.omit(params, ['triggerPrice', 'stopPrice']);
6262
+ }
6263
+ triggerPriceStr = this.priceToPrecision(symbol, parseFloat(triggerPrice));
6264
+ }
6265
+ if (stopLossPrice !== undefined) {
6266
+ if (omitParams) {
6267
+ params = this.omit(params, 'stopLossPrice');
6268
+ }
6269
+ stopLossPriceStr = this.priceToPrecision(symbol, parseFloat(stopLossPrice));
6270
+ }
6271
+ if (takeProfitPrice !== undefined) {
6272
+ if (omitParams) {
6273
+ params = this.omit(params, 'takeProfitPrice');
6274
+ }
6275
+ takeProfitPriceStr = this.priceToPrecision(symbol, parseFloat(takeProfitPrice));
6276
+ }
6277
+ return [triggerPriceStr, stopLossPriceStr, takeProfitPriceStr, params];
6278
+ }
6196
6279
  handleTriggerDirectionAndParams(params, exchangeSpecificKey = undefined, allowEmpty = false) {
6197
6280
  /**
6198
6281
  * @ignore
@@ -6994,6 +7077,17 @@ export default class Exchange {
6994
7077
  const values = Object.values(uniqueResult);
6995
7078
  return values;
6996
7079
  }
7080
+ removeKeysFromDict(dict, removeKeys) {
7081
+ const keys = Object.keys(dict);
7082
+ const newDict = {};
7083
+ for (let i = 0; i < keys.length; i++) {
7084
+ const key = keys[i];
7085
+ if (!this.inArray(key, removeKeys)) {
7086
+ newDict[key] = dict[key];
7087
+ }
7088
+ }
7089
+ return newDict;
7090
+ }
6997
7091
  handleUntilOption(key, request, params, multiplier = 1) {
6998
7092
  const until = this.safeInteger2(params, 'until', 'till');
6999
7093
  if (until !== undefined) {
@@ -7389,7 +7483,7 @@ export default class Exchange {
7389
7483
  const clients = Object.values(this.clients);
7390
7484
  for (let i = 0; i < clients.length; i++) {
7391
7485
  const client = clients[i];
7392
- const futures = this.safeDict(client, 'futures');
7486
+ const futures = client.futures;
7393
7487
  if ((futures !== undefined) && ('fetchPositionsSnapshot' in futures)) {
7394
7488
  delete futures['fetchPositionsSnapshot'];
7395
7489
  }
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  const zero = BigInt(0);
8
2
  const minusOne = BigInt(-1);
9
3
  const base = BigInt(10);
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  const errorHierarchy = {
8
2
  'BaseError': {
9
3
  'ExchangeError': {
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  /* eslint-disable max-classes-per-file */
8
2
  class BaseError extends Error {
9
3
  constructor(message) {
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  /* ------------------------------------------------------------------------ */
8
2
  import { hmac as _hmac } from '../../static_dependencies/noble-hashes/hmac.js';
9
3
  import { base16, base64, base58 } from '../../static_dependencies/scure-base/index.js';
@@ -1,4 +1,5 @@
1
1
  import { concatBytes } from '../../static_dependencies/noble-curves/abstract/utils.js';
2
2
  declare const json: (data: any, params?: any) => string, isJsonEncodedObject: (object: any) => boolean, binaryToString: (data: Uint8Array) => string, stringToBinary: (str: string) => Uint8Array, stringToBase64: (string: string) => string, base64ToString: (string: string) => string, base64ToBinary: (str: string) => Uint8Array, binaryToBase64: (data: Uint8Array) => string, base16ToBinary: (str: string) => Uint8Array, binaryToBase16: (data: Uint8Array) => string, base58ToBinary: (str: string) => Uint8Array, binaryToBase58: (data: Uint8Array) => string, binaryConcat: typeof concatBytes, binaryConcatArray: (arr: any[]) => Uint8Array, urlencode: (object: object, sort?: boolean) => string, urlencodeNested: (object: object) => string, urlencodeWithArrayRepeat: (object: object) => string, rawencode: (object: object, sort?: boolean) => string, encode: (str: string) => Uint8Array, decode: (data: Uint8Array) => string, urlencodeBase64: (payload: string | Uint8Array) => string, numberToLE: (n: number, padding: number) => Uint8Array, numberToBE: (n: number, padding: number) => Uint8Array;
3
3
  declare function packb(req: any): Uint8Array;
4
- export { json, isJsonEncodedObject, binaryToString, stringToBinary, stringToBase64, base64ToBinary, base64ToString, binaryToBase64, base16ToBinary, binaryToBase16, binaryConcat, binaryConcatArray, urlencode, urlencodeWithArrayRepeat, rawencode, encode, decode, urlencodeBase64, numberToLE, numberToBE, base58ToBinary, binaryToBase58, urlencodeNested, packb };
4
+ declare function base64ToBase64Url(base64: string, stripPadding?: boolean): string;
5
+ export { json, isJsonEncodedObject, binaryToString, stringToBinary, stringToBase64, base64ToBinary, base64ToString, binaryToBase64, base16ToBinary, binaryToBase16, binaryConcat, binaryConcatArray, base64ToBase64Url, urlencode, urlencodeWithArrayRepeat, rawencode, encode, decode, urlencodeBase64, numberToLE, numberToBE, base58ToBinary, binaryToBase58, urlencodeNested, packb };
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  /* eslint-disable */
8
2
  /* ------------------------------------------------------------------------ */
9
3
  import { base16, base58, base64, utf8 } from "../../static_dependencies/scure-base/index.js";
@@ -26,7 +20,14 @@ const json = (data, params = undefined) => JSON.stringify(data), isJsonEncodedOb
26
20
  function packb(req) {
27
21
  return serialize(req);
28
22
  }
29
- export { json, isJsonEncodedObject, binaryToString, stringToBinary, stringToBase64, base64ToBinary, base64ToString, binaryToBase64, base16ToBinary, binaryToBase16, binaryConcat, binaryConcatArray, urlencode, urlencodeWithArrayRepeat, rawencode, encode, decode
23
+ function base64ToBase64Url(base64, stripPadding = true) {
24
+ let base64url = base64.replace(/\+/g, "-").replace(/\//g, "_");
25
+ if (stripPadding) {
26
+ base64url = base64url.replace(/=+$/, "");
27
+ }
28
+ return base64url;
29
+ }
30
+ export { json, isJsonEncodedObject, binaryToString, stringToBinary, stringToBase64, base64ToBinary, base64ToString, binaryToBase64, base16ToBinary, binaryToBase16, binaryConcat, binaryConcatArray, base64ToBase64Url, urlencode, urlencodeWithArrayRepeat, rawencode, encode, decode
30
31
  // Url-safe-base64 without equals signs, with + replaced by - and slashes replaced by underscores
31
32
  , urlencodeBase64, numberToLE, numberToBE, base58ToBinary, binaryToBase58, urlencodeNested, packb };
32
33
  /* ------------------------------------------------------------------------ */
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  // ----------------------------------------------------------------------------
8
2
  import { isNumber, isDictionary, isArray } from './type.js';
9
3
  // ----------------------------------------------------------------------------
@@ -1,9 +1,3 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
1
  import { ROUND_UP, ROUND_DOWN } from './number.js';
8
2
  import { asFloat } from './type.js';
9
3
  import { NotSupported } from '../errors.js';