ccxt 4.5.59 → 4.5.61

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 (1091) hide show
  1. package/README.md +53 -52
  2. package/dist/ccxt.browser.min.js +4 -4
  3. package/dist/cjs/ccxt.js +6 -2
  4. package/dist/cjs/src/abstract/aftermath.js +1 -1
  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/ascendex.js +1 -1
  8. package/dist/cjs/src/abstract/aster.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/btcbox.js +1 -1
  32. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  33. package/dist/cjs/src/abstract/btcturk.js +1 -1
  34. package/dist/cjs/src/abstract/bullish.js +1 -1
  35. package/dist/cjs/src/abstract/bybit.js +1 -1
  36. package/dist/cjs/src/abstract/bydfi.js +1 -1
  37. package/dist/cjs/src/abstract/cex.js +1 -1
  38. package/dist/cjs/src/abstract/coinbase.js +1 -1
  39. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  40. package/dist/cjs/src/abstract/coinbaseinternational.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 +1 -1
  51. package/dist/cjs/src/abstract/delta.js +1 -1
  52. package/dist/cjs/src/abstract/deribit.js +1 -1
  53. package/dist/cjs/src/abstract/derive.js +1 -1
  54. package/dist/cjs/src/abstract/digifinex.js +1 -1
  55. package/dist/cjs/src/abstract/dydx.js +1 -1
  56. package/dist/cjs/src/abstract/exmo.js +1 -1
  57. package/dist/cjs/src/abstract/extended.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/grvt.js +1 -1
  62. package/dist/cjs/src/abstract/hashkey.js +1 -1
  63. package/dist/cjs/src/abstract/hibachi.js +1 -1
  64. package/dist/cjs/src/abstract/hitbtc.js +1 -1
  65. package/dist/cjs/src/abstract/hollaex.js +1 -1
  66. package/dist/cjs/src/abstract/htx.js +1 -1
  67. package/dist/cjs/src/abstract/hyperliquid.js +1 -1
  68. package/dist/cjs/src/abstract/independentreserve.js +1 -1
  69. package/dist/cjs/src/abstract/indodax.js +1 -1
  70. package/dist/cjs/src/abstract/kraken.js +1 -1
  71. package/dist/cjs/src/abstract/krakenfutures.js +1 -1
  72. package/dist/cjs/src/abstract/kucoin.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/lighter.js +1 -1
  76. package/dist/cjs/src/abstract/luno.js +1 -1
  77. package/dist/cjs/src/abstract/mercado.js +1 -1
  78. package/dist/cjs/src/abstract/mexc.js +1 -1
  79. package/dist/cjs/src/abstract/modetrade.js +1 -1
  80. package/dist/cjs/src/abstract/ndax.js +1 -1
  81. package/dist/cjs/src/abstract/novadax.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/p2b.js +1 -1
  85. package/dist/cjs/src/abstract/pacifica.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/tokocrypto.js +1 -1
  91. package/dist/cjs/src/abstract/toobit.js +1 -1
  92. package/dist/cjs/src/abstract/upbit.js +1 -1
  93. package/dist/cjs/src/abstract/weex.js +1 -1
  94. package/dist/cjs/src/abstract/whitebit.js +1 -1
  95. package/dist/cjs/src/abstract/woo.js +1 -1
  96. package/dist/cjs/src/abstract/woofipro.js +1 -1
  97. package/dist/cjs/src/abstract/xt.js +1 -1
  98. package/dist/cjs/src/abstract/zaif.js +1 -1
  99. package/dist/cjs/src/abstract/zebpay.js +1 -1
  100. package/dist/cjs/src/aftermath.js +9 -3
  101. package/dist/cjs/src/alpaca.js +2 -2
  102. package/dist/cjs/src/apex.js +35 -35
  103. package/dist/cjs/src/ascendex.js +6 -7
  104. package/dist/cjs/src/aster.js +23 -25
  105. package/dist/cjs/src/backpack.js +4 -4
  106. package/dist/cjs/src/base/Exchange.js +79 -60
  107. package/dist/cjs/src/base/Precise.js +6 -0
  108. package/dist/cjs/src/base/errors.js +6 -0
  109. package/dist/cjs/src/base/functions/crypto.js +73 -16
  110. package/dist/cjs/src/base/functions/encode.js +1 -1
  111. package/dist/cjs/src/base/functions/generic.js +1 -1
  112. package/dist/cjs/src/base/functions/io.js +1 -1
  113. package/dist/cjs/src/base/functions/misc.js +1 -0
  114. package/dist/cjs/src/base/functions/number.js +6 -0
  115. package/dist/cjs/src/base/functions/platform.js +6 -0
  116. package/dist/cjs/src/base/functions/rsa.js +26 -10
  117. package/dist/cjs/src/base/functions/string.js +6 -0
  118. package/dist/cjs/src/base/functions/throttle.js +1 -1
  119. package/dist/cjs/src/base/functions/time.js +6 -0
  120. package/dist/cjs/src/base/functions/totp.js +1 -0
  121. package/dist/cjs/src/base/functions/type.js +19 -13
  122. package/dist/cjs/src/base/functions.js +3 -2
  123. package/dist/cjs/src/base/ws/Cache.js +6 -2
  124. package/dist/cjs/src/base/ws/Client.js +1 -0
  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 +6 -0
  128. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  129. package/dist/cjs/src/bequant.js +2 -2
  130. package/dist/cjs/src/bigone.js +6 -6
  131. package/dist/cjs/src/binance.js +65 -18
  132. package/dist/cjs/src/binancecoinm.js +1 -1
  133. package/dist/cjs/src/binanceus.js +1 -1
  134. package/dist/cjs/src/binanceusdm.js +1 -1
  135. package/dist/cjs/src/bingx.js +30 -30
  136. package/dist/cjs/src/bit2c.js +3 -3
  137. package/dist/cjs/src/bitbank.js +2 -2
  138. package/dist/cjs/src/bitbns.js +3 -2
  139. package/dist/cjs/src/bitfinex.js +14 -14
  140. package/dist/cjs/src/bitflyer.js +2 -2
  141. package/dist/cjs/src/bitget.js +12 -12
  142. package/dist/cjs/src/bithumb.js +3 -3
  143. package/dist/cjs/src/bitmart.js +6 -6
  144. package/dist/cjs/src/bitmex.js +78 -11
  145. package/dist/cjs/src/bitopro.js +2 -2
  146. package/dist/cjs/src/bitrue.js +18 -18
  147. package/dist/cjs/src/bitso.js +3 -3
  148. package/dist/cjs/src/bitstamp.js +10 -10
  149. package/dist/cjs/src/bitteam.js +4 -4
  150. package/dist/cjs/src/bittrade.js +3 -3
  151. package/dist/cjs/src/bitvavo.js +1 -1
  152. package/dist/cjs/src/blockchaincom.js +7 -10
  153. package/dist/cjs/src/blofin.js +16 -18
  154. package/dist/cjs/src/btcbox.js +2 -2
  155. package/dist/cjs/src/btcmarkets.js +2 -2
  156. package/dist/cjs/src/btcturk.js +2 -2
  157. package/dist/cjs/src/bullish.js +6 -4
  158. package/dist/cjs/src/bybit.js +52 -58
  159. package/dist/cjs/src/bybiteu.js +1 -1
  160. package/dist/cjs/src/bydfi.js +6 -6
  161. package/dist/cjs/src/cex.js +3 -3
  162. package/dist/cjs/src/coinbase.js +9 -9
  163. package/dist/cjs/src/coinbaseexchange.js +8 -3
  164. package/dist/cjs/src/coincheck.js +9 -5
  165. package/dist/cjs/src/coinex.js +11 -11
  166. package/dist/cjs/src/coinmate.js +3 -3
  167. package/dist/cjs/src/coinmetro.js +6 -6
  168. package/dist/cjs/src/coinone.js +2 -4
  169. package/dist/cjs/src/coinsph.js +2 -1
  170. package/dist/cjs/src/coinspot.js +31 -6
  171. package/dist/cjs/src/cryptocom.js +2 -2
  172. package/dist/cjs/src/cryptomus.js +11 -7
  173. package/dist/cjs/src/deepcoin.js +4 -4
  174. package/dist/cjs/src/delta.js +11 -11
  175. package/dist/cjs/src/deribit.js +5 -5
  176. package/dist/cjs/src/derive.js +17 -18
  177. package/dist/cjs/src/digifinex.js +8 -8
  178. package/dist/cjs/src/dydx.js +7 -7
  179. package/dist/cjs/src/exmo.js +20 -18
  180. package/dist/cjs/src/extended.js +6 -6
  181. package/dist/cjs/src/fmfwio.js +1 -1
  182. package/dist/cjs/src/foxbit.js +4 -4
  183. package/dist/cjs/src/gate.js +53 -54
  184. package/dist/cjs/src/gateeu.js +60 -0
  185. package/dist/cjs/src/gemini.js +2 -2
  186. package/dist/cjs/src/grvt.js +4 -4
  187. package/dist/cjs/src/hashkey.js +6 -6
  188. package/dist/cjs/src/hibachi.js +9 -9
  189. package/dist/cjs/src/hitbtc.js +20 -19
  190. package/dist/cjs/src/hollaex.js +2 -2
  191. package/dist/cjs/src/htx.js +337 -231
  192. package/dist/cjs/src/hyperliquid.js +8 -8
  193. package/dist/cjs/src/independentreserve.js +3 -3
  194. package/dist/cjs/src/indodax.js +6 -6
  195. package/dist/cjs/src/kraken.js +5 -4
  196. package/dist/cjs/src/krakenfutures.js +6 -6
  197. package/dist/cjs/src/kucoin.js +11 -10
  198. package/dist/cjs/src/kucoinfutures.js +5 -1
  199. package/dist/cjs/src/latoken.js +11 -11
  200. package/dist/cjs/src/lbank.js +12 -12
  201. package/dist/cjs/src/lighter.js +8 -8
  202. package/dist/cjs/src/luno.js +6 -6
  203. package/dist/cjs/src/mercado.js +2 -2
  204. package/dist/cjs/src/mexc.js +32 -28
  205. package/dist/cjs/src/modetrade.js +9 -11
  206. package/dist/cjs/src/myokx.js +1 -1
  207. package/dist/cjs/src/ndax.js +2 -2
  208. package/dist/cjs/src/novadax.js +2 -2
  209. package/dist/cjs/src/okx.js +37 -47
  210. package/dist/cjs/src/okxus.js +1 -1
  211. package/dist/cjs/src/onetrading.js +3 -3
  212. package/dist/cjs/src/p2b.js +4 -5
  213. package/dist/cjs/src/pacifica.js +5 -5
  214. package/dist/cjs/src/paradex.js +5 -5
  215. package/dist/cjs/src/paymium.js +2 -2
  216. package/dist/cjs/src/phemex.js +25 -25
  217. package/dist/cjs/src/poloniex.js +4 -4
  218. package/dist/cjs/src/pro/aftermath.js +1 -1
  219. package/dist/cjs/src/pro/alpaca.js +2 -2
  220. package/dist/cjs/src/pro/apex.js +3 -3
  221. package/dist/cjs/src/pro/ascendex.js +2 -2
  222. package/dist/cjs/src/pro/aster.js +5 -5
  223. package/dist/cjs/src/pro/backpack.js +6 -6
  224. package/dist/cjs/src/pro/bequant.js +1 -1
  225. package/dist/cjs/src/pro/binance.js +14 -14
  226. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  227. package/dist/cjs/src/pro/binanceus.js +1 -1
  228. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  229. package/dist/cjs/src/pro/bingx.js +15 -15
  230. package/dist/cjs/src/pro/bitfinex.js +10 -7
  231. package/dist/cjs/src/pro/bitget.js +5 -5
  232. package/dist/cjs/src/pro/bithumb.js +2 -2
  233. package/dist/cjs/src/pro/bitmart.js +13 -10
  234. package/dist/cjs/src/pro/bitmex.js +24 -4
  235. package/dist/cjs/src/pro/bitopro.js +2 -2
  236. package/dist/cjs/src/pro/bitrue.js +2 -2
  237. package/dist/cjs/src/pro/bitstamp.js +2 -2
  238. package/dist/cjs/src/pro/bittrade.js +1 -1
  239. package/dist/cjs/src/pro/bitvavo.js +2 -2
  240. package/dist/cjs/src/pro/blockchaincom.js +2 -2
  241. package/dist/cjs/src/pro/blofin.js +12 -11
  242. package/dist/cjs/src/pro/bullish.js +2 -2
  243. package/dist/cjs/src/pro/bybit.js +36 -23
  244. package/dist/cjs/src/pro/bybiteu.js +1 -1
  245. package/dist/cjs/src/pro/bydfi.js +5 -5
  246. package/dist/cjs/src/pro/cex.js +2 -2
  247. package/dist/cjs/src/pro/coinbase.js +4 -4
  248. package/dist/cjs/src/pro/coinbaseexchange.js +6 -6
  249. package/dist/cjs/src/pro/coinbaseinternational.js +3 -3
  250. package/dist/cjs/src/pro/coincheck.js +2 -2
  251. package/dist/cjs/src/pro/coinex.js +3 -3
  252. package/dist/cjs/src/pro/coinone.js +2 -2
  253. package/dist/cjs/src/pro/cryptocom.js +5 -5
  254. package/dist/cjs/src/pro/deepcoin.js +11 -11
  255. package/dist/cjs/src/pro/deribit.js +3 -3
  256. package/dist/cjs/src/pro/derive.js +3 -3
  257. package/dist/cjs/src/pro/dydx.js +3 -3
  258. package/dist/cjs/src/pro/exmo.js +2 -2
  259. package/dist/cjs/src/pro/extended.js +1 -1
  260. package/dist/cjs/src/pro/gate.js +47 -16
  261. package/dist/cjs/src/pro/gateeu.js +32 -0
  262. package/dist/cjs/src/pro/gemini.js +4 -5
  263. package/dist/cjs/src/pro/grvt.js +9 -9
  264. package/dist/cjs/src/pro/hashkey.js +2 -2
  265. package/dist/cjs/src/pro/hitbtc.js +2 -2
  266. package/dist/cjs/src/pro/hollaex.js +2 -2
  267. package/dist/cjs/src/pro/htx.js +4 -4
  268. package/dist/cjs/src/pro/hyperliquid.js +45 -24
  269. package/dist/cjs/src/pro/independentreserve.js +2 -2
  270. package/dist/cjs/src/pro/kraken.js +15 -9
  271. package/dist/cjs/src/pro/krakenfutures.js +6 -6
  272. package/dist/cjs/src/pro/kucoin.js +7 -7
  273. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  274. package/dist/cjs/src/pro/lbank.js +1 -0
  275. package/dist/cjs/src/pro/lighter.js +3 -3
  276. package/dist/cjs/src/pro/luno.js +2 -2
  277. package/dist/cjs/src/pro/mexc.js +9 -9
  278. package/dist/cjs/src/pro/modetrade.js +1 -1
  279. package/dist/cjs/src/pro/myokx.js +1 -1
  280. package/dist/cjs/src/pro/ndax.js +3 -3
  281. package/dist/cjs/src/pro/okx.js +5 -5
  282. package/dist/cjs/src/pro/okxus.js +1 -1
  283. package/dist/cjs/src/pro/onetrading.js +2 -2
  284. package/dist/cjs/src/pro/p2b.js +3 -3
  285. package/dist/cjs/src/pro/pacifica.js +3 -3
  286. package/dist/cjs/src/pro/paradex.js +2 -2
  287. package/dist/cjs/src/pro/phemex.js +2 -2
  288. package/dist/cjs/src/pro/poloniex.js +5 -5
  289. package/dist/cjs/src/pro/toobit.js +3 -3
  290. package/dist/cjs/src/pro/upbit.js +2 -2
  291. package/dist/cjs/src/pro/weex.js +5 -5
  292. package/dist/cjs/src/pro/whitebit.js +2 -2
  293. package/dist/cjs/src/pro/woo.js +3 -3
  294. package/dist/cjs/src/pro/woofipro.js +1 -1
  295. package/dist/cjs/src/pro/xt.js +1 -1
  296. package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +0 -1
  297. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +1 -0
  298. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +1 -0
  299. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +1 -0
  300. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +1 -0
  301. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +1 -0
  302. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +1 -0
  303. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +1 -0
  304. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +1 -0
  305. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +1 -0
  306. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +1 -0
  307. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +1 -0
  308. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +1 -0
  309. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +1 -0
  310. package/dist/cjs/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +1 -0
  311. package/dist/cjs/src/static_dependencies/dydx-v4-client/helpers.js +6 -0
  312. package/dist/cjs/src/static_dependencies/dydx-v4-client/onboarding.js +1 -0
  313. package/dist/cjs/src/static_dependencies/dydx-v4-client/registry.js +1 -0
  314. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +38 -59
  315. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -2
  316. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +77 -92
  317. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +1 -1
  318. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +1 -0
  319. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +2 -2
  320. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +1 -0
  321. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +1 -1
  322. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +2 -2
  323. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +1 -0
  324. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +2 -2
  325. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +1 -0
  326. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +1 -0
  327. package/dist/cjs/src/static_dependencies/ethers/fragments.js +96 -105
  328. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +53 -65
  329. package/dist/cjs/src/static_dependencies/ethers/index.js +1 -14
  330. package/dist/cjs/src/static_dependencies/ethers/interface.js +6 -0
  331. package/dist/cjs/src/static_dependencies/ethers/typed.js +7 -34
  332. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +1 -13
  333. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +1 -6
  334. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +1 -9
  335. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +6 -0
  336. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +1 -11
  337. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +1 -8
  338. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +1 -5
  339. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +6 -0
  340. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +1 -8
  341. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  342. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +2 -1
  343. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +1 -0
  344. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  345. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
  346. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
  347. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
  348. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +1 -0
  349. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  350. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
  351. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  352. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  353. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
  354. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  355. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
  356. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +6 -0
  357. package/dist/cjs/src/static_dependencies/node-fetch/body.js +1 -5
  358. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +1 -0
  359. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +6 -0
  360. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +1 -0
  361. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +1 -5
  362. package/dist/cjs/src/static_dependencies/node-fetch/index.js +1 -7
  363. package/dist/cjs/src/static_dependencies/node-fetch/request.js +1 -7
  364. package/dist/cjs/src/static_dependencies/node-fetch/response.js +1 -5
  365. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
  366. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
  367. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +6 -0
  368. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +1 -0
  369. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +1 -0
  370. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +2 -1
  371. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +2 -1
  372. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
  373. package/dist/cjs/src/static_dependencies/qs/formats.js +6 -0
  374. package/dist/cjs/src/static_dependencies/qs/index.js +1 -0
  375. package/dist/cjs/src/static_dependencies/qs/parse.js +1 -0
  376. package/dist/cjs/src/static_dependencies/qs/stringify.js +1 -0
  377. package/dist/cjs/src/static_dependencies/qs/utils.js +6 -0
  378. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  379. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +6 -0
  380. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
  381. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
  382. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +6 -0
  383. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +6 -0
  384. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +6 -0
  385. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  386. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +2 -2
  387. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +2 -2
  388. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +1 -0
  389. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +1 -0
  390. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
  391. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
  392. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
  393. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +1 -0
  394. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  395. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +1 -0
  396. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +1 -0
  397. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
  398. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +1 -0
  399. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +1 -0
  400. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +1 -0
  401. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  402. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +1 -4
  403. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +1 -0
  404. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +1 -3
  405. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +1 -0
  406. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +1 -0
  407. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +1 -0
  408. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +1 -0
  409. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  410. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +7 -1
  411. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +6 -0
  412. package/dist/cjs/src/tokocrypto.js +5 -5
  413. package/dist/cjs/src/toobit.js +4 -4
  414. package/dist/cjs/src/upbit.js +11 -8
  415. package/dist/cjs/src/weex.js +10 -10
  416. package/dist/cjs/src/whitebit.js +6 -6
  417. package/dist/cjs/src/woo.js +20 -16
  418. package/dist/cjs/src/woofipro.js +7 -9
  419. package/dist/cjs/src/xt.js +5 -4
  420. package/dist/cjs/src/zaif.js +3 -3
  421. package/dist/cjs/src/zebpay.js +7 -7
  422. package/js/ccxt.d.ts +9 -3
  423. package/js/ccxt.js +12 -3
  424. package/js/src/abstract/aftermath.js +6 -0
  425. package/js/src/abstract/alpaca.js +6 -0
  426. package/js/src/abstract/apex.js +6 -0
  427. package/js/src/abstract/ascendex.js +6 -0
  428. package/js/src/abstract/aster.js +6 -0
  429. package/js/src/abstract/backpack.js +6 -0
  430. package/js/src/abstract/bequant.js +6 -0
  431. package/js/src/abstract/bigone.js +6 -0
  432. package/js/src/abstract/binance.js +6 -0
  433. package/js/src/abstract/binancecoinm.js +6 -0
  434. package/js/src/abstract/binanceus.js +6 -0
  435. package/js/src/abstract/binanceusdm.js +6 -0
  436. package/js/src/abstract/bingx.js +6 -0
  437. package/js/src/abstract/bit2c.js +6 -0
  438. package/js/src/abstract/bitbank.js +6 -0
  439. package/js/src/abstract/bitbns.js +6 -0
  440. package/js/src/abstract/bitfinex.js +6 -0
  441. package/js/src/abstract/bitflyer.js +6 -0
  442. package/js/src/abstract/bitget.js +6 -0
  443. package/js/src/abstract/bithumb.js +6 -0
  444. package/js/src/abstract/bitmart.js +6 -0
  445. package/js/src/abstract/bitmex.js +6 -0
  446. package/js/src/abstract/bitopro.js +6 -0
  447. package/js/src/abstract/bitrue.js +6 -0
  448. package/js/src/abstract/bitso.js +6 -0
  449. package/js/src/abstract/bitstamp.js +6 -0
  450. package/js/src/abstract/bitteam.js +6 -0
  451. package/js/src/abstract/bittrade.js +6 -0
  452. package/js/src/abstract/bitvavo.js +6 -0
  453. package/js/src/abstract/blockchaincom.js +6 -0
  454. package/js/src/abstract/blofin.js +6 -0
  455. package/js/src/abstract/btcbox.js +6 -0
  456. package/js/src/abstract/btcmarkets.js +6 -0
  457. package/js/src/abstract/btcturk.js +6 -0
  458. package/js/src/abstract/bullish.js +6 -0
  459. package/js/src/abstract/bybit.js +6 -0
  460. package/js/src/abstract/bybiteu.js +6 -0
  461. package/js/src/abstract/bydfi.js +6 -0
  462. package/js/src/abstract/cex.js +6 -0
  463. package/js/src/abstract/coinbase.js +6 -0
  464. package/js/src/abstract/coinbaseexchange.d.ts +3 -0
  465. package/js/src/abstract/coinbaseexchange.js +6 -0
  466. package/js/src/abstract/coinbaseinternational.js +6 -0
  467. package/js/src/abstract/coincheck.js +6 -0
  468. package/js/src/abstract/coinex.js +6 -0
  469. package/js/src/abstract/coinmate.js +6 -0
  470. package/js/src/abstract/coinmetro.js +6 -0
  471. package/js/src/abstract/coinone.js +6 -0
  472. package/js/src/abstract/coinsph.js +6 -0
  473. package/js/src/abstract/coinspot.js +6 -0
  474. package/js/src/abstract/cryptocom.js +6 -0
  475. package/js/src/abstract/cryptomus.js +6 -0
  476. package/js/src/abstract/deepcoin.js +6 -0
  477. package/js/src/abstract/delta.js +6 -0
  478. package/js/src/abstract/deribit.js +6 -0
  479. package/js/src/abstract/derive.js +6 -0
  480. package/js/src/abstract/digifinex.js +6 -0
  481. package/js/src/abstract/dydx.js +6 -0
  482. package/js/src/abstract/exmo.js +6 -0
  483. package/js/src/abstract/extended.js +6 -0
  484. package/js/src/abstract/fmfwio.js +6 -0
  485. package/js/src/abstract/foxbit.js +6 -0
  486. package/js/src/abstract/gate.js +6 -0
  487. package/js/src/abstract/gateeu.d.ts +346 -0
  488. package/js/src/abstract/gateeu.js +11 -0
  489. package/js/src/abstract/gemini.js +6 -0
  490. package/js/src/abstract/grvt.js +6 -0
  491. package/js/src/abstract/hashkey.js +6 -0
  492. package/js/src/abstract/hibachi.js +6 -0
  493. package/js/src/abstract/hitbtc.js +6 -0
  494. package/js/src/abstract/hollaex.js +6 -0
  495. package/js/src/abstract/htx.d.ts +20 -124
  496. package/js/src/abstract/htx.js +6 -0
  497. package/js/src/abstract/hyperliquid.js +6 -0
  498. package/js/src/abstract/independentreserve.js +6 -0
  499. package/js/src/abstract/indodax.js +6 -0
  500. package/js/src/abstract/kraken.js +6 -0
  501. package/js/src/abstract/krakenfutures.js +6 -0
  502. package/js/src/abstract/kucoin.js +6 -0
  503. package/js/src/abstract/kucoinfutures.js +6 -0
  504. package/js/src/abstract/latoken.js +6 -0
  505. package/js/src/abstract/lbank.js +6 -0
  506. package/js/src/abstract/lighter.js +6 -0
  507. package/js/src/abstract/luno.js +6 -0
  508. package/js/src/abstract/mercado.js +6 -0
  509. package/js/src/abstract/mexc.js +6 -0
  510. package/js/src/abstract/modetrade.js +6 -0
  511. package/js/src/abstract/myokx.js +6 -0
  512. package/js/src/abstract/ndax.js +6 -0
  513. package/js/src/abstract/novadax.js +6 -0
  514. package/js/src/abstract/okx.js +6 -0
  515. package/js/src/abstract/okxus.js +6 -0
  516. package/js/src/abstract/onetrading.js +6 -0
  517. package/js/src/abstract/p2b.js +6 -0
  518. package/js/src/abstract/pacifica.js +6 -0
  519. package/js/src/abstract/paradex.js +6 -0
  520. package/js/src/abstract/paymium.js +6 -0
  521. package/js/src/abstract/phemex.js +6 -0
  522. package/js/src/abstract/poloniex.js +6 -0
  523. package/js/src/abstract/tokocrypto.js +6 -0
  524. package/js/src/abstract/toobit.js +6 -0
  525. package/js/src/abstract/upbit.js +6 -0
  526. package/js/src/abstract/weex.js +6 -0
  527. package/js/src/abstract/whitebit.js +6 -0
  528. package/js/src/abstract/woo.js +6 -0
  529. package/js/src/abstract/woofipro.js +6 -0
  530. package/js/src/abstract/xt.js +6 -0
  531. package/js/src/abstract/zaif.js +6 -0
  532. package/js/src/abstract/zebpay.js +6 -0
  533. package/js/src/aftermath.d.ts +9 -5
  534. package/js/src/aftermath.js +14 -3
  535. package/js/src/alpaca.d.ts +4 -4
  536. package/js/src/alpaca.js +7 -1
  537. package/js/src/apex.d.ts +29 -29
  538. package/js/src/apex.js +40 -34
  539. package/js/src/ascendex.d.ts +4 -4
  540. package/js/src/ascendex.js +11 -6
  541. package/js/src/aster.d.ts +10 -10
  542. package/js/src/aster.js +28 -24
  543. package/js/src/backpack.d.ts +4 -4
  544. package/js/src/backpack.js +9 -3
  545. package/js/src/base/Exchange.d.ts +67 -54
  546. package/js/src/base/Exchange.js +86 -61
  547. package/js/src/base/Precise.js +6 -0
  548. package/js/src/base/errorHierarchy.js +6 -0
  549. package/js/src/base/errors.js +6 -0
  550. package/js/src/base/functions/crypto.d.ts +2 -1
  551. package/js/src/base/functions/crypto.js +78 -16
  552. package/js/src/base/functions/encode.js +6 -0
  553. package/js/src/base/functions/generic.js +8 -2
  554. package/js/src/base/functions/io.js +6 -0
  555. package/js/src/base/functions/misc.js +6 -0
  556. package/js/src/base/functions/number.js +6 -0
  557. package/js/src/base/functions/platform.js +6 -0
  558. package/js/src/base/functions/rsa.js +24 -7
  559. package/js/src/base/functions/string.js +6 -0
  560. package/js/src/base/functions/throttle.js +6 -0
  561. package/js/src/base/functions/time.js +6 -0
  562. package/js/src/base/functions/totp.js +6 -0
  563. package/js/src/base/functions/type.d.ts +13 -7
  564. package/js/src/base/functions/type.js +19 -13
  565. package/js/src/base/functions.js +6 -0
  566. package/js/src/base/types.d.ts +152 -149
  567. package/js/src/base/types.js +6 -0
  568. package/js/src/base/ws/Cache.d.ts +5 -4
  569. package/js/src/base/ws/Cache.js +6 -2
  570. package/js/src/base/ws/Client.js +6 -0
  571. package/js/src/base/ws/Future.js +6 -0
  572. package/js/src/base/ws/OrderBook.d.ts +3 -3
  573. package/js/src/base/ws/OrderBook.js +8 -2
  574. package/js/src/base/ws/OrderBookSide.js +6 -0
  575. package/js/src/base/ws/WsClient.js +6 -0
  576. package/js/src/base/ws/functions.d.ts +1 -0
  577. package/js/src/base/ws/functions.js +7 -1
  578. package/js/src/bequant.js +7 -1
  579. package/js/src/bigone.d.ts +5 -5
  580. package/js/src/bigone.js +11 -5
  581. package/js/src/binance.d.ts +14 -14
  582. package/js/src/binance.js +70 -17
  583. package/js/src/binancecoinm.js +6 -0
  584. package/js/src/binanceus.js +6 -0
  585. package/js/src/binanceusdm.js +6 -0
  586. package/js/src/bingx.d.ts +8 -8
  587. package/js/src/bingx.js +35 -29
  588. package/js/src/bit2c.d.ts +5 -5
  589. package/js/src/bit2c.js +8 -2
  590. package/js/src/bitbank.d.ts +4 -4
  591. package/js/src/bitbank.js +7 -1
  592. package/js/src/bitbns.d.ts +6 -6
  593. package/js/src/bitbns.js +8 -1
  594. package/js/src/bitfinex.d.ts +7 -7
  595. package/js/src/bitfinex.js +19 -13
  596. package/js/src/bitflyer.d.ts +5 -5
  597. package/js/src/bitflyer.js +7 -1
  598. package/js/src/bitget.d.ts +10 -10
  599. package/js/src/bitget.js +17 -11
  600. package/js/src/bithumb.d.ts +5 -5
  601. package/js/src/bithumb.js +8 -2
  602. package/js/src/bitmart.d.ts +7 -7
  603. package/js/src/bitmart.js +11 -5
  604. package/js/src/bitmex.d.ts +5 -5
  605. package/js/src/bitmex.js +83 -10
  606. package/js/src/bitopro.d.ts +5 -5
  607. package/js/src/bitopro.js +7 -1
  608. package/js/src/bitrue.d.ts +12 -12
  609. package/js/src/bitrue.js +23 -17
  610. package/js/src/bitso.d.ts +5 -5
  611. package/js/src/bitso.js +8 -2
  612. package/js/src/bitstamp.d.ts +5 -5
  613. package/js/src/bitstamp.js +15 -9
  614. package/js/src/bitteam.d.ts +4 -4
  615. package/js/src/bitteam.js +9 -3
  616. package/js/src/bittrade.d.ts +5 -5
  617. package/js/src/bittrade.js +8 -2
  618. package/js/src/bitvavo.d.ts +8 -8
  619. package/js/src/bitvavo.js +7 -1
  620. package/js/src/blockchaincom.d.ts +5 -5
  621. package/js/src/blockchaincom.js +12 -9
  622. package/js/src/blofin.d.ts +5 -5
  623. package/js/src/blofin.js +21 -17
  624. package/js/src/btcbox.d.ts +4 -4
  625. package/js/src/btcbox.js +7 -1
  626. package/js/src/btcmarkets.d.ts +6 -6
  627. package/js/src/btcmarkets.js +7 -1
  628. package/js/src/btcturk.d.ts +5 -5
  629. package/js/src/btcturk.js +7 -1
  630. package/js/src/bullish.d.ts +6 -6
  631. package/js/src/bullish.js +11 -3
  632. package/js/src/bybit.d.ts +9 -9
  633. package/js/src/bybit.js +57 -57
  634. package/js/src/bybiteu.js +6 -0
  635. package/js/src/bydfi.js +11 -5
  636. package/js/src/cex.d.ts +5 -5
  637. package/js/src/cex.js +8 -2
  638. package/js/src/coinbase.d.ts +5 -5
  639. package/js/src/coinbase.js +15 -9
  640. package/js/src/coinbaseexchange.d.ts +5 -5
  641. package/js/src/coinbaseexchange.js +14 -3
  642. package/js/src/coinbaseinternational.d.ts +7 -7
  643. package/js/src/coinbaseinternational.js +6 -0
  644. package/js/src/coincheck.d.ts +4 -4
  645. package/js/src/coincheck.js +14 -4
  646. package/js/src/coinex.d.ts +7 -7
  647. package/js/src/coinex.js +16 -10
  648. package/js/src/coinmate.d.ts +4 -4
  649. package/js/src/coinmate.js +8 -2
  650. package/js/src/coinmetro.d.ts +5 -5
  651. package/js/src/coinmetro.js +11 -5
  652. package/js/src/coinone.d.ts +5 -5
  653. package/js/src/coinone.js +7 -3
  654. package/js/src/coinsph.d.ts +5 -5
  655. package/js/src/coinsph.js +7 -1
  656. package/js/src/coinspot.d.ts +6 -5
  657. package/js/src/coinspot.js +37 -6
  658. package/js/src/cryptocom.d.ts +7 -7
  659. package/js/src/cryptocom.js +7 -1
  660. package/js/src/cryptomus.d.ts +7 -7
  661. package/js/src/cryptomus.js +16 -6
  662. package/js/src/deepcoin.d.ts +7 -13
  663. package/js/src/deepcoin.js +9 -3
  664. package/js/src/delta.d.ts +5 -5
  665. package/js/src/delta.js +16 -10
  666. package/js/src/deribit.d.ts +7 -7
  667. package/js/src/deribit.js +10 -4
  668. package/js/src/derive.d.ts +4 -4
  669. package/js/src/derive.js +22 -17
  670. package/js/src/digifinex.d.ts +6 -6
  671. package/js/src/digifinex.js +13 -7
  672. package/js/src/dydx.d.ts +5 -5
  673. package/js/src/dydx.js +12 -6
  674. package/js/src/exmo.d.ts +5 -5
  675. package/js/src/exmo.js +25 -17
  676. package/js/src/extended.d.ts +12 -12
  677. package/js/src/extended.js +11 -5
  678. package/js/src/fmfwio.js +6 -0
  679. package/js/src/foxbit.d.ts +5 -5
  680. package/js/src/foxbit.js +9 -3
  681. package/js/src/gate.d.ts +16 -29
  682. package/js/src/gate.js +58 -53
  683. package/js/src/gateeu.d.ts +4 -0
  684. package/js/src/gateeu.js +59 -0
  685. package/js/src/gemini.d.ts +5 -5
  686. package/js/src/gemini.js +7 -1
  687. package/js/src/grvt.d.ts +5 -5
  688. package/js/src/grvt.js +9 -3
  689. package/js/src/hashkey.d.ts +4 -4
  690. package/js/src/hashkey.js +11 -5
  691. package/js/src/hibachi.d.ts +4 -4
  692. package/js/src/hibachi.js +14 -8
  693. package/js/src/hitbtc.d.ts +7 -7
  694. package/js/src/hitbtc.js +25 -19
  695. package/js/src/hollaex.d.ts +5 -5
  696. package/js/src/hollaex.js +7 -1
  697. package/js/src/htx.d.ts +39 -23
  698. package/js/src/htx.js +342 -230
  699. package/js/src/hyperliquid.d.ts +11 -11
  700. package/js/src/hyperliquid.js +13 -7
  701. package/js/src/independentreserve.d.ts +4 -4
  702. package/js/src/independentreserve.js +8 -2
  703. package/js/src/indodax.d.ts +5 -5
  704. package/js/src/indodax.js +11 -5
  705. package/js/src/kraken.d.ts +6 -6
  706. package/js/src/kraken.js +10 -3
  707. package/js/src/krakenfutures.d.ts +5 -5
  708. package/js/src/krakenfutures.js +11 -5
  709. package/js/src/kucoin.d.ts +8 -8
  710. package/js/src/kucoin.js +16 -9
  711. package/js/src/kucoinfutures.d.ts +4 -0
  712. package/js/src/kucoinfutures.js +10 -0
  713. package/js/src/latoken.d.ts +4 -4
  714. package/js/src/latoken.js +16 -10
  715. package/js/src/lbank.d.ts +10 -10
  716. package/js/src/lbank.js +17 -11
  717. package/js/src/lighter.d.ts +5 -5
  718. package/js/src/lighter.js +13 -7
  719. package/js/src/luno.d.ts +6 -6
  720. package/js/src/luno.js +11 -5
  721. package/js/src/mercado.d.ts +5 -5
  722. package/js/src/mercado.js +7 -1
  723. package/js/src/mexc.d.ts +15 -15
  724. package/js/src/mexc.js +37 -27
  725. package/js/src/modetrade.d.ts +5 -5
  726. package/js/src/modetrade.js +14 -10
  727. package/js/src/myokx.js +6 -0
  728. package/js/src/ndax.d.ts +5 -5
  729. package/js/src/ndax.js +7 -1
  730. package/js/src/novadax.d.ts +5 -5
  731. package/js/src/novadax.js +7 -1
  732. package/js/src/okx.d.ts +6 -6
  733. package/js/src/okx.js +42 -46
  734. package/js/src/okxus.js +6 -0
  735. package/js/src/onetrading.d.ts +7 -7
  736. package/js/src/onetrading.js +8 -2
  737. package/js/src/p2b.d.ts +5 -5
  738. package/js/src/p2b.js +9 -4
  739. package/js/src/pacifica.d.ts +7 -7
  740. package/js/src/pacifica.js +10 -4
  741. package/js/src/paradex.d.ts +5 -5
  742. package/js/src/paradex.js +10 -4
  743. package/js/src/paymium.d.ts +5 -5
  744. package/js/src/paymium.js +7 -1
  745. package/js/src/phemex.d.ts +7 -7
  746. package/js/src/phemex.js +31 -25
  747. package/js/src/poloniex.d.ts +5 -5
  748. package/js/src/poloniex.js +9 -3
  749. package/js/src/pro/aftermath.d.ts +1 -1
  750. package/js/src/pro/aftermath.js +7 -1
  751. package/js/src/pro/alpaca.d.ts +1 -1
  752. package/js/src/pro/alpaca.js +7 -1
  753. package/js/src/pro/apex.d.ts +3 -4
  754. package/js/src/pro/apex.js +8 -2
  755. package/js/src/pro/ascendex.d.ts +2 -2
  756. package/js/src/pro/ascendex.js +7 -1
  757. package/js/src/pro/aster.d.ts +10 -10
  758. package/js/src/pro/aster.js +10 -4
  759. package/js/src/pro/backpack.d.ts +7 -7
  760. package/js/src/pro/backpack.js +11 -5
  761. package/js/src/pro/bequant.js +6 -0
  762. package/js/src/pro/binance.d.ts +7 -7
  763. package/js/src/pro/binance.js +20 -14
  764. package/js/src/pro/binancecoinm.js +6 -0
  765. package/js/src/pro/binanceus.js +6 -0
  766. package/js/src/pro/binanceusdm.js +6 -0
  767. package/js/src/pro/bingx.d.ts +4 -4
  768. package/js/src/pro/bingx.js +20 -14
  769. package/js/src/pro/bitfinex.d.ts +5 -5
  770. package/js/src/pro/bitfinex.js +15 -6
  771. package/js/src/pro/bitget.d.ts +11 -11
  772. package/js/src/pro/bitget.js +10 -4
  773. package/js/src/pro/bithumb.d.ts +4 -4
  774. package/js/src/pro/bithumb.js +7 -1
  775. package/js/src/pro/bitmart.d.ts +6 -6
  776. package/js/src/pro/bitmart.js +18 -9
  777. package/js/src/pro/bitmex.d.ts +2 -2
  778. package/js/src/pro/bitmex.js +29 -3
  779. package/js/src/pro/bitopro.d.ts +1 -1
  780. package/js/src/pro/bitopro.js +8 -2
  781. package/js/src/pro/bitrue.d.ts +1 -1
  782. package/js/src/pro/bitrue.js +7 -1
  783. package/js/src/pro/bitstamp.d.ts +4 -4
  784. package/js/src/pro/bitstamp.js +7 -1
  785. package/js/src/pro/bittrade.d.ts +1 -1
  786. package/js/src/pro/bittrade.js +7 -1
  787. package/js/src/pro/bitvavo.d.ts +1 -1
  788. package/js/src/pro/bitvavo.js +7 -1
  789. package/js/src/pro/blockchaincom.d.ts +5 -5
  790. package/js/src/pro/blockchaincom.js +7 -1
  791. package/js/src/pro/blofin.d.ts +5 -5
  792. package/js/src/pro/blofin.js +17 -10
  793. package/js/src/pro/bullish.d.ts +3 -3
  794. package/js/src/pro/bullish.js +7 -1
  795. package/js/src/pro/bybit.d.ts +10 -10
  796. package/js/src/pro/bybit.js +41 -22
  797. package/js/src/pro/bybiteu.js +6 -0
  798. package/js/src/pro/bydfi.d.ts +4 -4
  799. package/js/src/pro/bydfi.js +10 -4
  800. package/js/src/pro/cex.d.ts +2 -2
  801. package/js/src/pro/cex.js +7 -1
  802. package/js/src/pro/coinbase.d.ts +3 -3
  803. package/js/src/pro/coinbase.js +9 -3
  804. package/js/src/pro/coinbaseexchange.d.ts +6 -6
  805. package/js/src/pro/coinbaseexchange.js +11 -5
  806. package/js/src/pro/coinbaseinternational.d.ts +2 -2
  807. package/js/src/pro/coinbaseinternational.js +8 -2
  808. package/js/src/pro/coincheck.d.ts +1 -1
  809. package/js/src/pro/coincheck.js +7 -1
  810. package/js/src/pro/coinex.d.ts +8 -8
  811. package/js/src/pro/coinex.js +8 -2
  812. package/js/src/pro/coinone.d.ts +2 -2
  813. package/js/src/pro/coinone.js +7 -1
  814. package/js/src/pro/cryptocom.d.ts +4 -4
  815. package/js/src/pro/cryptocom.js +10 -4
  816. package/js/src/pro/deepcoin.d.ts +5 -5
  817. package/js/src/pro/deepcoin.js +16 -10
  818. package/js/src/pro/deribit.d.ts +5 -5
  819. package/js/src/pro/deribit.js +8 -2
  820. package/js/src/pro/derive.d.ts +2 -2
  821. package/js/src/pro/derive.js +9 -3
  822. package/js/src/pro/dydx.d.ts +2 -2
  823. package/js/src/pro/dydx.js +8 -2
  824. package/js/src/pro/exmo.d.ts +1 -1
  825. package/js/src/pro/exmo.js +7 -1
  826. package/js/src/pro/extended.d.ts +1 -1
  827. package/js/src/pro/extended.js +7 -1
  828. package/js/src/pro/gate.d.ts +4 -3
  829. package/js/src/pro/gate.js +52 -15
  830. package/js/src/pro/gateeu.d.ts +4 -0
  831. package/js/src/pro/gateeu.js +31 -0
  832. package/js/src/pro/gemini.d.ts +2 -2
  833. package/js/src/pro/gemini.js +9 -4
  834. package/js/src/pro/grvt.d.ts +9 -9
  835. package/js/src/pro/grvt.js +14 -8
  836. package/js/src/pro/hashkey.d.ts +2 -2
  837. package/js/src/pro/hashkey.js +7 -1
  838. package/js/src/pro/hitbtc.d.ts +1 -1
  839. package/js/src/pro/hitbtc.js +7 -1
  840. package/js/src/pro/hollaex.d.ts +1 -1
  841. package/js/src/pro/hollaex.js +7 -1
  842. package/js/src/pro/htx.d.ts +5 -5
  843. package/js/src/pro/htx.js +9 -3
  844. package/js/src/pro/hyperliquid.d.ts +6 -5
  845. package/js/src/pro/hyperliquid.js +51 -24
  846. package/js/src/pro/independentreserve.d.ts +1 -1
  847. package/js/src/pro/independentreserve.js +7 -1
  848. package/js/src/pro/kraken.d.ts +2 -2
  849. package/js/src/pro/kraken.js +20 -8
  850. package/js/src/pro/krakenfutures.d.ts +2 -2
  851. package/js/src/pro/krakenfutures.js +11 -5
  852. package/js/src/pro/kucoin.d.ts +17 -17
  853. package/js/src/pro/kucoin.js +12 -6
  854. package/js/src/pro/kucoinfutures.js +6 -0
  855. package/js/src/pro/lbank.d.ts +1 -1
  856. package/js/src/pro/lbank.js +6 -0
  857. package/js/src/pro/lighter.d.ts +6 -6
  858. package/js/src/pro/lighter.js +8 -2
  859. package/js/src/pro/luno.d.ts +1 -1
  860. package/js/src/pro/luno.js +7 -1
  861. package/js/src/pro/mexc.d.ts +9 -9
  862. package/js/src/pro/mexc.js +14 -8
  863. package/js/src/pro/modetrade.d.ts +2 -2
  864. package/js/src/pro/modetrade.js +7 -1
  865. package/js/src/pro/myokx.js +6 -0
  866. package/js/src/pro/ndax.d.ts +1 -1
  867. package/js/src/pro/ndax.js +8 -2
  868. package/js/src/pro/okx.d.ts +8 -8
  869. package/js/src/pro/okx.js +10 -4
  870. package/js/src/pro/okxus.js +6 -0
  871. package/js/src/pro/onetrading.d.ts +1 -1
  872. package/js/src/pro/onetrading.js +7 -1
  873. package/js/src/pro/p2b.d.ts +1 -1
  874. package/js/src/pro/p2b.js +8 -2
  875. package/js/src/pro/pacifica.d.ts +2 -2
  876. package/js/src/pro/pacifica.js +8 -2
  877. package/js/src/pro/paradex.d.ts +1 -1
  878. package/js/src/pro/paradex.js +7 -1
  879. package/js/src/pro/phemex.d.ts +1 -1
  880. package/js/src/pro/phemex.js +7 -1
  881. package/js/src/pro/poloniex.d.ts +1 -1
  882. package/js/src/pro/poloniex.js +10 -4
  883. package/js/src/pro/toobit.d.ts +2 -2
  884. package/js/src/pro/toobit.js +8 -2
  885. package/js/src/pro/upbit.d.ts +4 -4
  886. package/js/src/pro/upbit.js +7 -1
  887. package/js/src/pro/weex.d.ts +4 -4
  888. package/js/src/pro/weex.js +10 -4
  889. package/js/src/pro/whitebit.d.ts +4 -4
  890. package/js/src/pro/whitebit.js +7 -1
  891. package/js/src/pro/woo.d.ts +7 -7
  892. package/js/src/pro/woo.js +9 -3
  893. package/js/src/pro/woofipro.d.ts +7 -7
  894. package/js/src/pro/woofipro.js +7 -1
  895. package/js/src/pro/xt.js +6 -0
  896. package/js/src/protobuf/mexc/compiled.cjs +6 -0
  897. package/js/src/protobuf/mexc/compiled.d.cts +6 -0
  898. package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +6 -0
  899. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.js +6 -0
  900. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +6 -0
  901. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +6 -0
  902. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +6 -0
  903. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +6 -0
  904. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +6 -0
  905. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.js +6 -0
  906. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +6 -0
  907. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.js +6 -0
  908. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.js +6 -0
  909. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.js +6 -0
  910. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.js +6 -0
  911. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.js +6 -0
  912. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +6 -0
  913. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +6 -0
  914. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +6 -0
  915. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +6 -0
  916. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +6 -0
  917. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.js +6 -0
  918. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.js +6 -0
  919. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +6 -0
  920. package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +6 -0
  921. package/js/src/static_dependencies/dydx-v4-client/helpers.js +6 -0
  922. package/js/src/static_dependencies/dydx-v4-client/long/index.cjs +6 -0
  923. package/js/src/static_dependencies/dydx-v4-client/long/index.d.cts +6 -0
  924. package/js/src/static_dependencies/dydx-v4-client/onboarding.js +6 -0
  925. package/js/src/static_dependencies/dydx-v4-client/registry.js +6 -0
  926. package/js/src/static_dependencies/ethers/abi-coder.js +43 -46
  927. package/js/src/static_dependencies/ethers/address/address.js +6 -0
  928. package/js/src/static_dependencies/ethers/address/checks.js +6 -0
  929. package/js/src/static_dependencies/ethers/address/contract-address.js +6 -0
  930. package/js/src/static_dependencies/ethers/address/index.js +6 -0
  931. package/js/src/static_dependencies/ethers/bytes32.js +6 -0
  932. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +81 -90
  933. package/js/src/static_dependencies/ethers/coders/address.js +6 -0
  934. package/js/src/static_dependencies/ethers/coders/anonymous.js +6 -0
  935. package/js/src/static_dependencies/ethers/coders/array.js +6 -0
  936. package/js/src/static_dependencies/ethers/coders/boolean.js +6 -0
  937. package/js/src/static_dependencies/ethers/coders/bytes.js +6 -0
  938. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +6 -0
  939. package/js/src/static_dependencies/ethers/coders/null.js +6 -0
  940. package/js/src/static_dependencies/ethers/coders/number.js +6 -0
  941. package/js/src/static_dependencies/ethers/coders/string.js +6 -0
  942. package/js/src/static_dependencies/ethers/coders/tuple.js +6 -0
  943. package/js/src/static_dependencies/ethers/fragments.js +96 -104
  944. package/js/src/static_dependencies/ethers/hash/index.js +6 -0
  945. package/js/src/static_dependencies/ethers/hash/solidity.js +6 -0
  946. package/js/src/static_dependencies/ethers/hash/typed-data.js +58 -65
  947. package/js/src/static_dependencies/ethers/index.js +6 -0
  948. package/js/src/static_dependencies/ethers/interface.js +187 -191
  949. package/js/src/static_dependencies/ethers/typed.js +11 -18
  950. package/js/src/static_dependencies/ethers/utils/base58.js +6 -0
  951. package/js/src/static_dependencies/ethers/utils/base64-browser.js +6 -0
  952. package/js/src/static_dependencies/ethers/utils/base64.js +6 -0
  953. package/js/src/static_dependencies/ethers/utils/data.js +6 -0
  954. package/js/src/static_dependencies/ethers/utils/errors.js +6 -0
  955. package/js/src/static_dependencies/ethers/utils/events.js +10 -17
  956. package/js/src/static_dependencies/ethers/utils/fixednumber.js +99 -99
  957. package/js/src/static_dependencies/ethers/utils/index.js +6 -0
  958. package/js/src/static_dependencies/ethers/utils/maths.js +6 -0
  959. package/js/src/static_dependencies/ethers/utils/properties.js +6 -0
  960. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +6 -0
  961. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +6 -0
  962. package/js/src/static_dependencies/ethers/utils/rlp.js +6 -0
  963. package/js/src/static_dependencies/ethers/utils/units.js +6 -0
  964. package/js/src/static_dependencies/ethers/utils/utf8.js +6 -0
  965. package/js/src/static_dependencies/ethers/utils/uuid.js +6 -0
  966. package/js/src/static_dependencies/fflake/browser.js +6 -0
  967. package/js/src/static_dependencies/messagepack/msgpack.js +6 -0
  968. package/js/src/static_dependencies/node-fetch/body.js +6 -0
  969. package/js/src/static_dependencies/node-fetch/errors/abort-error.js +6 -0
  970. package/js/src/static_dependencies/node-fetch/errors/base.js +6 -0
  971. package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +6 -0
  972. package/js/src/static_dependencies/node-fetch/headers.js +6 -0
  973. package/js/src/static_dependencies/node-fetch/index.d.ts +1 -1
  974. package/js/src/static_dependencies/node-fetch/index.js +6 -0
  975. package/js/src/static_dependencies/node-fetch/request.js +6 -0
  976. package/js/src/static_dependencies/node-fetch/response.js +6 -0
  977. package/js/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
  978. package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
  979. package/js/src/static_dependencies/node-fetch/utils/is.js +6 -0
  980. package/js/src/static_dependencies/node-fetch/utils/referrer.js +6 -0
  981. package/js/src/static_dependencies/proxies/agent-base/helpers.js +6 -0
  982. package/js/src/static_dependencies/proxies/agent-base/index.js +6 -0
  983. package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +7 -1
  984. package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +7 -1
  985. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
  986. package/js/src/static_dependencies/qs/formats.js +6 -0
  987. package/js/src/static_dependencies/qs/index.js +6 -0
  988. package/js/src/static_dependencies/qs/parse.js +6 -0
  989. package/js/src/static_dependencies/qs/stringify.js +6 -0
  990. package/js/src/static_dependencies/qs/utils.js +6 -0
  991. package/js/src/static_dependencies/starknet/constants.js +6 -0
  992. package/js/src/static_dependencies/starknet/index.js +6 -0
  993. package/js/src/static_dependencies/starknet/types/cairoEnum.js +6 -0
  994. package/js/src/static_dependencies/starknet/types/calldata.js +6 -0
  995. package/js/src/static_dependencies/starknet/types/index.js +6 -0
  996. package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
  997. package/js/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
  998. package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +6 -0
  999. package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +6 -0
  1000. package/js/src/static_dependencies/starknet/types/lib/index.js +6 -0
  1001. package/js/src/static_dependencies/starknet/types/typedData.js +6 -0
  1002. package/js/src/static_dependencies/starknet/utils/address.js +6 -0
  1003. package/js/src/static_dependencies/starknet/utils/assert.js +6 -0
  1004. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +6 -0
  1005. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +7 -1
  1006. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +7 -1
  1007. package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +6 -0
  1008. package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +6 -0
  1009. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
  1010. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
  1011. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
  1012. package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +6 -0
  1013. package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +6 -0
  1014. package/js/src/static_dependencies/starknet/utils/calldata/index.js +6 -0
  1015. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +6 -0
  1016. package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +6 -0
  1017. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +6 -0
  1018. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
  1019. package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +6 -0
  1020. package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +6 -0
  1021. package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +6 -0
  1022. package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +6 -0
  1023. package/js/src/static_dependencies/starknet/utils/calldata/validate.js +6 -0
  1024. package/js/src/static_dependencies/starknet/utils/encode.js +6 -0
  1025. package/js/src/static_dependencies/starknet/utils/hash/classHash.js +6 -0
  1026. package/js/src/static_dependencies/starknet/utils/hash/index.js +6 -0
  1027. package/js/src/static_dependencies/starknet/utils/merkle.js +6 -0
  1028. package/js/src/static_dependencies/starknet/utils/num.js +6 -0
  1029. package/js/src/static_dependencies/starknet/utils/selector.js +6 -0
  1030. package/js/src/static_dependencies/starknet/utils/shortString.js +6 -0
  1031. package/js/src/static_dependencies/starknet/utils/starknetId.js +6 -0
  1032. package/js/src/static_dependencies/starknet/utils/typedData.js +6 -0
  1033. package/js/src/static_dependencies/starknet/utils/uint256.js +6 -0
  1034. package/js/src/static_dependencies/starknet/utils/url.js +6 -0
  1035. package/js/src/static_dependencies/watchable/src/index.js +6 -0
  1036. package/js/src/static_dependencies/watchable/src/types.js +6 -0
  1037. package/js/src/static_dependencies/watchable/src/unpromise.js +7 -1
  1038. package/js/src/static_dependencies/zklink/zklink-sdk-web.js +6 -0
  1039. package/js/src/tokocrypto.d.ts +4 -4
  1040. package/js/src/tokocrypto.js +10 -4
  1041. package/js/src/toobit.d.ts +5 -5
  1042. package/js/src/toobit.js +9 -3
  1043. package/js/src/upbit.d.ts +5 -5
  1044. package/js/src/upbit.js +16 -7
  1045. package/js/src/weex.d.ts +5 -5
  1046. package/js/src/weex.js +15 -9
  1047. package/js/src/whitebit.d.ts +6 -6
  1048. package/js/src/whitebit.js +11 -5
  1049. package/js/src/woo.d.ts +6 -6
  1050. package/js/src/woo.js +25 -15
  1051. package/js/src/woofipro.d.ts +6 -6
  1052. package/js/src/woofipro.js +12 -8
  1053. package/js/src/xt.d.ts +36 -36
  1054. package/js/src/xt.js +10 -3
  1055. package/js/src/zaif.d.ts +4 -4
  1056. package/js/src/zaif.js +8 -2
  1057. package/js/src/zebpay.d.ts +7 -7
  1058. package/js/src/zebpay.js +12 -6
  1059. package/package.json +25 -15
  1060. package/js/src/static_dependencies/jsencrypt/JSEncrypt.d.ts +0 -116
  1061. package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -188
  1062. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.d.ts +0 -142
  1063. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -301
  1064. package/js/src/static_dependencies/jsencrypt/index.d.ts +0 -3
  1065. package/js/src/static_dependencies/jsencrypt/index.js +0 -3
  1066. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.d.ts +0 -51
  1067. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -559
  1068. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.d.ts +0 -5
  1069. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -88
  1070. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.d.ts +0 -3
  1071. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -64
  1072. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.d.ts +0 -9
  1073. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -85
  1074. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.d.ts +0 -9778
  1075. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +0 -1962
  1076. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.d.ts +0 -3
  1077. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -19
  1078. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +0 -101
  1079. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -1751
  1080. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.d.ts +0 -10
  1081. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -44
  1082. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.d.ts +0 -3
  1083. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -74
  1084. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.d.ts +0 -23
  1085. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -371
  1086. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.d.ts +0 -7
  1087. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -58
  1088. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.d.ts +0 -24
  1089. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -1621
  1090. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.d.ts +0 -5
  1091. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -69
@@ -1,3 +1,9 @@
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
+
1
7
  // ----------------------------------------------------------------------------
2
8
  import { secp256k1 } from '@noble/curves/secp256k1.js';
3
9
  import { keccak_256 } from '@noble/hashes/sha3.js';
@@ -12,8 +18,7 @@ import * as functions from './functions.js';
12
18
  // // vwap as vwapFunc,
13
19
  // } from './functions.js';
14
20
  // import exceptions from "./errors.js"
15
- import { // eslint-disable-line object-curly-newline
16
- ExchangeError, BadSymbol, NullResponse, InvalidAddress, InvalidOrder, NotSupported, OperationFailed, BadResponse, AuthenticationError, DDoSProtection, RequestTimeout, NetworkError, InvalidProxySettings, ExchangeNotAvailable, ArgumentsRequired, RateLimitExceeded, BadRequest, UnsubscribeError, ExchangeClosedByUser, } from './errors.js';
21
+ import { ExchangeError, BadSymbol, NullResponse, InvalidAddress, InvalidOrder, NotSupported, OperationFailed, BadResponse, AuthenticationError, DDoSProtection, RequestTimeout, NetworkError, InvalidProxySettings, ExchangeNotAvailable, ArgumentsRequired, RateLimitExceeded, BadRequest, UnsubscribeError, ExchangeClosedByUser, } from './errors.js';
17
22
  import { Precise } from './Precise.js';
18
23
  //-----------------------------------------------------------------------------
19
24
  import WsClient from './ws/WsClient.js';
@@ -22,7 +27,6 @@ import { OrderBook as WsOrderBook, IndexedOrderBook, CountedOrderBook } from './
22
27
  import { totp } from './functions/totp.js';
23
28
  import ethers from '../static_dependencies/ethers/index.js';
24
29
  import { TypedDataEncoder } from '../static_dependencies/ethers/hash/index.js';
25
- import { SecureRandom } from '../static_dependencies/jsencrypt/lib/jsbn/rng.js';
26
30
  import init, * as zklink from '../static_dependencies/zklink/zklink-sdk-web.js';
27
31
  import * as Starknet from '../static_dependencies/starknet/index.js';
28
32
  import { exportMnemonicAndPrivateKey, deriveHDKeyFromMnemonic } from '../static_dependencies/dydx-v4-client/onboarding.js';
@@ -44,14 +48,30 @@ let SignMode = undefined;
44
48
  * @class Exchange
45
49
  */
46
50
  export default class Exchange {
51
+ // this is updated by vss.js when building
52
+ static { this.ccxtVersion = '4.5.60'; }
47
53
  constructor(userConfig = {}) {
48
54
  this.isSandboxModeEnabled = false;
49
55
  this.api = undefined;
50
56
  this.certified = false;
51
57
  this.pro = false;
52
58
  this.countries = undefined;
59
+ this.proxyUrl = undefined;
60
+ this.proxy_url = undefined;
61
+ this.httpProxy = undefined;
62
+ this.http_proxy = undefined;
63
+ this.httpsProxy = undefined;
64
+ this.https_proxy = undefined;
65
+ this.socksProxy = undefined;
66
+ this.socks_proxy = undefined;
53
67
  this.userAgent = undefined;
54
68
  this.user_agent = undefined;
69
+ this.wsProxy = undefined;
70
+ this.ws_proxy = undefined;
71
+ this.wssProxy = undefined;
72
+ this.wss_proxy = undefined;
73
+ this.wsSocksProxy = undefined;
74
+ this.ws_socks_proxy = undefined;
55
75
  //
56
76
  this.userAgents = {
57
77
  'chrome': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36',
@@ -251,7 +271,7 @@ export default class Exchange {
251
271
  // if (isNode) {
252
272
  // this.nodeVersion = process.version.match (/\d+\.\d+\.\d+/)[0]
253
273
  // this.userAgent = {
254
- // 'User-Agent': 'ccxt/' + (Exchange as any).ccxtVersion +
274
+ // 'User-Agent': 'ccxt/' + Exchange.ccxtVersion +
255
275
  // ' (+https://github.com/ccxt/ccxt)' +
256
276
  // ' Node.js/' + this.nodeVersion + ' (JavaScript)'
257
277
  // }
@@ -381,9 +401,7 @@ export default class Exchange {
381
401
  const nameBytes = new TextEncoder().encode(name);
382
402
  const data = new Uint8Array([...nsBytes, ...nameBytes]);
383
403
  const nsHash = sha1(data);
384
- // eslint-disable-next-line
385
404
  nsHash[6] = (nsHash[6] & 0x0f) | 0x50;
386
- // eslint-disable-next-line
387
405
  nsHash[8] = (nsHash[8] & 0x3f) | 0x80;
388
406
  const hex = [...nsHash.slice(0, 16)]
389
407
  .map((b) => b.toString(16).padStart(2, '0'))
@@ -400,37 +418,6 @@ export default class Exchange {
400
418
  // @ts-expect-error
401
419
  return encodeURIComponent(...args);
402
420
  }
403
- checkRequiredVersion(requiredVersion, error = true) {
404
- let result = true;
405
- const [major1, minor1, patch1] = requiredVersion.split('.');
406
- const [major2, minor2, patch2] = Exchange.ccxtVersion.split('.');
407
- const intMajor1 = this.parseToInt(major1);
408
- const intMinor1 = this.parseToInt(minor1);
409
- const intPatch1 = this.parseToInt(patch1);
410
- const intMajor2 = this.parseToInt(major2);
411
- const intMinor2 = this.parseToInt(minor2);
412
- const intPatch2 = this.parseToInt(patch2);
413
- if (intMajor1 > intMajor2) {
414
- result = false;
415
- }
416
- if (intMajor1 === intMajor2) {
417
- if (intMinor1 > intMinor2) {
418
- result = false;
419
- }
420
- else if (intMinor1 === intMinor2 && intPatch1 > intPatch2) {
421
- result = false;
422
- }
423
- }
424
- if (!result) {
425
- if (error) {
426
- throw new NotSupported('Your current version of CCXT is ' + Exchange.ccxtVersion + ', a newer version ' + requiredVersion + ' is required, please, upgrade your version of CCXT');
427
- }
428
- else {
429
- return error;
430
- }
431
- }
432
- return result;
433
- }
434
421
  throttle(cost = undefined) {
435
422
  return this.throttler.throttle(cost);
436
423
  }
@@ -491,7 +478,6 @@ export default class Exchange {
491
478
  }
492
479
  }
493
480
  log(...args) {
494
- // eslint-disable-next-line no-console
495
481
  console.log(...args);
496
482
  }
497
483
  async loadProxyModules() {
@@ -512,7 +498,7 @@ export default class Exchange {
512
498
  // @ts-ignore
513
499
  this.httpProxyAgentModule = await import(/* webpackIgnore: true */ 'http-proxy-agent');
514
500
  // @ts-ignore
515
- this.httpsProxyAgentModule = await import(/* webpackIgnore: true */ 'https-proxy-agent'); // eslint-disable-line
501
+ this.httpsProxyAgentModule = await import(/* webpackIgnore: true */ 'https-proxy-agent');
516
502
  }
517
503
  catch (err) {
518
504
  // TODO: handle error
@@ -721,7 +707,7 @@ export default class Exchange {
721
707
  // some users having issues with dynamic imports (https://github.com/ccxt/ccxt/pull/20687)
722
708
  // so let them to fallback to node's native fetch
723
709
  if (typeof fetch === 'function') {
724
- this.fetchImplementation = fetch; // eslint-disable-line
710
+ this.fetchImplementation = fetch;
725
711
  // as it's browser-compatible implementation ( https://nodejs.org/dist/latest-v20.x/docs/api/globals.html#fetch )
726
712
  // it throws same error types
727
713
  this.AbortError = DOMException;
@@ -1235,8 +1221,8 @@ export default class Exchange {
1235
1221
  }
1236
1222
  }
1237
1223
  }
1238
- async close() {
1239
- // test by running ts/src/pro/test/base/test.close.ts
1224
+ async close(cleanInstanceCache = false) {
1225
+ // [WS]
1240
1226
  await this.sleep(0); // allow other futures to run
1241
1227
  const clients = Object.values(this.clients || {});
1242
1228
  const closedClients = [];
@@ -1250,7 +1236,14 @@ export default class Exchange {
1250
1236
  delete this.clients[client.url];
1251
1237
  closedClients.push(client.close());
1252
1238
  }
1253
- return Promise.all(closedClients);
1239
+ await Promise.all(closedClients);
1240
+ if (cleanInstanceCache) {
1241
+ this.cleanWsData();
1242
+ }
1243
+ // [REST]
1244
+ if (cleanInstanceCache) {
1245
+ this.cleanRestData();
1246
+ }
1254
1247
  }
1255
1248
  async loadOrderBook(client, messageHash, symbol, limit = undefined, params = {}) {
1256
1249
  if (!(symbol in this.orderbooks)) {
@@ -1570,11 +1563,9 @@ export default class Exchange {
1570
1563
  return dict;
1571
1564
  }
1572
1565
  randomBytes(length) {
1573
- const rng = new SecureRandom();
1574
- const x = [];
1575
- x.length = length;
1576
- rng.nextBytes(x);
1577
- return Buffer.from(x).toString('hex');
1566
+ const x = new Uint8Array(length);
1567
+ crypto.getRandomValues(x);
1568
+ return this.binaryToBase16(x);
1578
1569
  }
1579
1570
  randNumber(size) {
1580
1571
  let number = '';
@@ -1623,7 +1614,6 @@ export default class Exchange {
1623
1614
  this.checkLighterSignedError(res);
1624
1615
  return signer;
1625
1616
  }
1626
- // eslint-disable-next-line no-unused-vars
1627
1617
  lighterSignCreateGroupedOrders(signer, request) {
1628
1618
  const orders = request['orders'];
1629
1619
  const ordersArr = [];
@@ -1647,7 +1637,6 @@ export default class Exchange {
1647
1637
  this.checkLighterSignedError(res);
1648
1638
  return [res.txType, res.txInfo];
1649
1639
  }
1650
- // eslint-disable-next-line no-unused-vars
1651
1640
  lighterSignCreateOrder(signer, request) {
1652
1641
  const res = (globalThis.SignCreateOrder(parseInt(request['market_index']), request['client_order_index'], request['base_amount'], request['avg_execution_price'], request['is_ask'], request['order_type'], request['time_in_force'], request['reduce_only'], request['trigger_price'], request['order_expiry'], request['integrator_account_index'], request['integrator_taker_fee'], request['integrator_maker_fee'], 1, // skip nonce
1653
1642
  request['nonce'], request['api_key_index'], request['account_index']));
@@ -1671,7 +1660,6 @@ export default class Exchange {
1671
1660
  this.checkLighterSignedError(res);
1672
1661
  return [res.txType, res.txInfo];
1673
1662
  }
1674
- // eslint-disable-next-line no-unused-vars
1675
1663
  lighterSignCreateSubAccount(signer, request) {
1676
1664
  const res = (globalThis.SignCreateSubAccount(1, // skip nonce
1677
1665
  request['nonce'], request['api_key_index'], request['account_index']));
@@ -1713,7 +1701,6 @@ export default class Exchange {
1713
1701
  this.checkLighterSignedError(res);
1714
1702
  return [res.txType, res.txInfo];
1715
1703
  }
1716
- // eslint-disable-next-line no-unused-vars
1717
1704
  lighterSignApproveIntegrator(signer, request) {
1718
1705
  const res = globalThis.SignApproveIntegrator(request['integrator_account_index'], request['integrator_taker_fee'], request['integrator_maker_fee'], request['integrator_taker_fee'], request['integrator_maker_fee'], request['approval_expiry'], 1, // skip nonce
1719
1706
  request['nonce'], request['api_key_index'], request['account_index']);
@@ -1726,14 +1713,26 @@ export default class Exchange {
1726
1713
  this.checkLighterSignedError(res);
1727
1714
  return [res.privateKey, res.publicKey];
1728
1715
  }
1729
- // eslint-disable-next-line no-unused-vars
1730
1716
  lighterSignChangePubkey(signer, request) {
1731
1717
  const res = globalThis.SignChangePubKey(Buffer.from(request['pubkey']).toString(), 1, // skip nonce
1732
1718
  request['nonce'], request['api_key_index'], request['account_index']);
1733
1719
  this.checkLighterSignedError(res);
1734
1720
  return [res.txType, res.txInfo, res.messageToSign];
1735
1721
  }
1736
- /* eslint-enable */
1722
+ setLastRestRequestTimestamp() {
1723
+ // hand-written per language (not transpiled): in most languages this is a
1724
+ // plain assignment, but the Go implementation guards the write with a mutex
1725
+ // because concurrent requests would otherwise data-race on this field
1726
+ this.lastRestRequestTimestamp = this.milliseconds();
1727
+ }
1728
+ setLastRequest(request) {
1729
+ // hand-written per language (not transpiled): plain assignments in most
1730
+ // languages, but the Go implementation guards the writes with a mutex because
1731
+ // concurrent requests would otherwise data-race on these bookkeeping fields
1732
+ this.last_request_headers = request['headers'];
1733
+ this.last_request_body = request['body'];
1734
+ this.last_request_url = request['url'];
1735
+ }
1737
1736
  // ------------------------------------------------------------------------
1738
1737
  // ########################################################################
1739
1738
  // ########################################################################
@@ -2117,6 +2116,34 @@ export default class Exchange {
2117
2116
  'rollingWindowSize': 60000, // default 60 seconds, requires rateLimiterAlgorithm to be set as 'rollingWindow'
2118
2117
  };
2119
2118
  }
2119
+ cleanRestData() {
2120
+ this.ids = undefined;
2121
+ this.markets = undefined;
2122
+ this.markets_by_id = undefined;
2123
+ this.symbols = undefined;
2124
+ this.codes = undefined;
2125
+ this.currencies = this.createSafeDictionary();
2126
+ this.currencies_by_id = undefined;
2127
+ this.baseCurrencies = undefined;
2128
+ this.quoteCurrencies = undefined;
2129
+ this.last_http_response = undefined;
2130
+ // this.last_json_response = undefined; // not unified prop
2131
+ this.last_response_headers = undefined;
2132
+ this.last_request_headers = undefined;
2133
+ }
2134
+ cleanWsData() {
2135
+ this.balance = this.createSafeDictionary(true);
2136
+ this.orderbooks = this.createSafeDictionary(true);
2137
+ this.tickers = this.createSafeDictionary(true);
2138
+ this.liquidations = undefined;
2139
+ this.myLiquidations = undefined;
2140
+ this.orders = undefined;
2141
+ this.trades = this.createSafeDictionary(true);
2142
+ this.transactions = this.createSafeDictionary();
2143
+ this.ohlcvs = this.createSafeDictionary(true);
2144
+ this.myTrades = undefined;
2145
+ this.positions = undefined;
2146
+ }
2120
2147
  safeBoolN(dictionaryOrList, keys, defaultValue = undefined) {
2121
2148
  /**
2122
2149
  * @ignore
@@ -5173,11 +5200,9 @@ export default class Exchange {
5173
5200
  [retryDelay, params] = this.handleOptionAndParams(params, path, 'maxRetriesOnFailureDelay', 0);
5174
5201
  for (let i = 0; i < retries + 1; i++) {
5175
5202
  try {
5176
- this.lastRestRequestTimestamp = this.milliseconds();
5203
+ this.setLastRestRequestTimestamp();
5177
5204
  const request = this.sign(path, api, method, params, headers, body);
5178
- this.last_request_headers = request['headers'];
5179
- this.last_request_body = request['body'];
5180
- this.last_request_url = request['url'];
5205
+ this.setLastRequest(request);
5181
5206
  return await this.fetch(request['url'], request['method'], request['headers'], request['body']);
5182
5207
  }
5183
5208
  catch (e) {
@@ -5373,7 +5398,7 @@ export default class Exchange {
5373
5398
  if ((currencyId === undefined) && (currency !== undefined)) {
5374
5399
  return currency;
5375
5400
  }
5376
- if ((this.currencies_by_id !== undefined) && (currencyId in this.currencies_by_id) && (this.currencies_by_id[currencyId] !== undefined)) {
5401
+ if ((currencyId !== undefined) && (this.currencies_by_id !== undefined) && (currencyId in this.currencies_by_id) && (this.currencies_by_id[currencyId] !== undefined)) {
5377
5402
  return this.currencies_by_id[currencyId];
5378
5403
  }
5379
5404
  let code = currencyId;
@@ -7633,7 +7658,7 @@ export default class Exchange {
7633
7658
  errors = 0;
7634
7659
  result = this.arrayConcat(result, response);
7635
7660
  const last = this.safeValue(response, responseLength - 1);
7636
- paginationTimestamp = this.safeInteger(last, 'timestamp') + 1;
7661
+ paginationTimestamp = this.safeInteger(last, 'timestamp', 0) + 1;
7637
7662
  if ((until !== undefined) && (paginationTimestamp >= until)) {
7638
7663
  break;
7639
7664
  }
@@ -8290,7 +8315,7 @@ export default class Exchange {
8290
8315
  * @param {string} symbol unified symbol of the market to fetch the order book for
8291
8316
  * @param {int} [limit] the maximum amount of order book entries to return
8292
8317
  * @param {object} [params] extra parameters specific to the exchange API endpoint
8293
- * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/?id=order-book-structure} indexed by market symbols
8318
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
8294
8319
  */
8295
8320
  throw new NotSupported(this.id + ' fetchOrdersByStatusWs () is not supported yet');
8296
8321
  }
@@ -1,3 +1,9 @@
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
+
1
7
  const zero = BigInt(0);
2
8
  const minusOne = BigInt(-1);
3
9
  const base = BigInt(10);
@@ -1,3 +1,9 @@
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
+
1
7
  const errorHierarchy = {
2
8
  'BaseError': {
3
9
  'ExchangeError': {
@@ -1,3 +1,9 @@
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
+
1
7
  /* eslint-disable max-classes-per-file */
2
8
  class BaseError extends Error {
3
9
  constructor(message) {
@@ -4,6 +4,7 @@ import type { EdDSA as CurveFnEDDSA } from '@noble/curves/abstract/edwards.js';
4
4
  type Input = string | Uint8Array;
5
5
  type Hex = string | Uint8Array;
6
6
  type Digest = 'binary' | 'hex' | 'base64';
7
+ declare function pemToDer(pem: string): Uint8Array;
7
8
  declare const hash: (request: Input, hash: CHash, digest?: Digest) => any;
8
9
  declare const hmac: (request: Input, secret: Input, hash: CHash, digest?: Digest) => any;
9
10
  declare function ecdsa(request: Hex, secret: Hex, curve: CurveFn, prehash?: CHash, fixedLength?: boolean): {
@@ -13,4 +14,4 @@ declare function ecdsa(request: Hex, secret: Hex, curve: CurveFn, prehash?: CHas
13
14
  };
14
15
  declare function eddsa(request: Hex, secret: Input, curve: CurveFnEDDSA): string;
15
16
  declare function crc32(str: any, signed?: boolean): number;
16
- export { hash, hmac, crc32, ecdsa, eddsa, };
17
+ export { hash, hmac, crc32, ecdsa, eddsa, pemToDer, };
@@ -1,9 +1,13 @@
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
+
1
7
  /* ------------------------------------------------------------------------ */
2
8
  import { hmac as _hmac } from '@noble/hashes/hmac.js';
3
9
  import { hex as base16, base64 } from '@scure/base';
4
10
  import { utf8ToBytes } from '@noble/hashes/utils.js';
5
- import { Base64 } from '../../static_dependencies/jsencrypt/lib/asn1js/base64.js';
6
- import { ASN1 } from "../../static_dependencies/jsencrypt/lib/asn1js/asn1.js";
7
11
  import { secp256k1 } from '@noble/curves/secp256k1.js';
8
12
  import { p256 as P256 } from '@noble/curves/nist.js';
9
13
  import { numberToBytesLE, hexToBytes } from '@noble/curves/utils.js';
@@ -20,6 +24,62 @@ const supportedCurve = {
20
24
  '1.3.132.0.10': secp256k1,
21
25
  '1.2.840.10045.3.1.7': P256,
22
26
  };
27
+ /* ----- minimal PEM / DER helpers (replace the vendored jsencrypt asn1js) ----- */
28
+ // strip the PEM armor (-----BEGIN/END ...-----) and base64-decode the body to DER bytes
29
+ function pemToDer(pem) {
30
+ const body = pem
31
+ .replace(/-----BEGIN [^-]+-----/g, '')
32
+ .replace(/-----END [^-]+-----/g, '')
33
+ .replace(/\s+/g, '');
34
+ return base64.decode(body);
35
+ }
36
+ // read a definite-form DER length, returns [ length, nextOffset ]
37
+ function readDerLength(bytes, offset) {
38
+ let length = bytes[offset];
39
+ offset += 1;
40
+ if (length & 0x80) {
41
+ const numBytes = length & 0x7f;
42
+ length = 0;
43
+ for (let i = 0; i < numBytes; i++) {
44
+ length = (length * 256) + bytes[offset];
45
+ offset += 1;
46
+ }
47
+ }
48
+ return [length, offset];
49
+ }
50
+ // parse a DER buffer into a flat list of its top-level TLV elements
51
+ function parseDerElements(bytes) {
52
+ const elements = [];
53
+ let offset = 0;
54
+ while (offset < bytes.length) {
55
+ const tag = bytes[offset];
56
+ offset += 1;
57
+ const result = readDerLength(bytes, offset);
58
+ const length = result[0];
59
+ offset = result[1];
60
+ const content = bytes.slice(offset, offset + length);
61
+ elements.push({ 'tag': tag, 'content': content });
62
+ offset += length;
63
+ }
64
+ return elements;
65
+ }
66
+ // decode an OID's content bytes into a dotted-decimal string
67
+ function decodeOid(bytes) {
68
+ const values = [];
69
+ const first = bytes[0];
70
+ values.push(Math.floor(first / 40));
71
+ values.push(first % 40);
72
+ let value = 0;
73
+ for (let i = 1; i < bytes.length; i++) {
74
+ const b = bytes[i];
75
+ value = (value * 128) + (b & 0x7f);
76
+ if ((b & 0x80) === 0) {
77
+ values.push(value);
78
+ value = 0;
79
+ }
80
+ }
81
+ return values.join('.');
82
+ }
23
83
  /* ............................................. */
24
84
  const hash = (request, hash, digest = 'hex') => {
25
85
  const binary = hash(utf8Bytes(request));
@@ -38,22 +98,24 @@ function ecdsa(request, secret, curve, prehash = null, fixedLength = false) {
38
98
  if (typeof secret === 'string' && secret.length > 64) {
39
99
  // decode pem key
40
100
  if (secret.startsWith('-----BEGIN EC PRIVATE KEY-----')) {
41
- const der = Base64.unarmor(secret);
42
- let asn1 = ASN1.decode(der);
43
- if (asn1.sub.length === 4) {
44
- // ECPrivateKey ::= SEQUENCE {
45
- // version INTEGER { ecPrivkeyVer1(1) } (ecPrivkeyVer1),
46
- // privateKey OCTET STRING,
47
- // parameters [0] ECParameters {{ NamedCurve }} OPTIONAL,
48
- // publicKey [1] BIT STRING OPTIONAL
49
- // }
50
- if (typeof asn1.sub[2].sub !== null && asn1.sub[2].sub.length > 0) {
51
- const oid = asn1.sub[2].sub[0].content(undefined);
101
+ const der = pemToDer(secret);
102
+ const top = parseDerElements(der);
103
+ // ECPrivateKey ::= SEQUENCE {
104
+ // version INTEGER { ecPrivkeyVer1(1) } (ecPrivkeyVer1),
105
+ // privateKey OCTET STRING,
106
+ // parameters [0] ECParameters {{ NamedCurve }} OPTIONAL,
107
+ // publicKey [1] BIT STRING OPTIONAL
108
+ // }
109
+ const fields = parseDerElements(top[0].content);
110
+ if (fields.length === 4) {
111
+ const params = fields[2];
112
+ if (params !== undefined && params.tag === 0xA0 && params.content.length > 0) {
113
+ const oid = decodeOid(parseDerElements(params.content)[0].content);
52
114
  if (supportedCurve[oid] === undefined)
53
115
  throw new Error('Unsupported curve');
54
116
  curve = supportedCurve[oid];
55
117
  }
56
- secret = asn1.sub[1].getHexStringValue();
118
+ secret = base16.encode(fields[1].content);
57
119
  }
58
120
  else {
59
121
  // maybe return false
@@ -101,7 +163,7 @@ function eddsa(request, secret, curve) {
101
163
  else if (typeof secret === 'string') {
102
164
  // secret is the base64 pem encoded key
103
165
  // we get the last 32 bytes
104
- privateKey = new Uint8Array(Base64.unarmor(secret).slice(16));
166
+ privateKey = new Uint8Array(pemToDer(secret).slice(16));
105
167
  }
106
168
  const signature = curve.sign(hexBytes(request), privateKey);
107
169
  return base64.encode(signature);
@@ -128,5 +190,5 @@ function crc32(str, signed = false) {
128
190
  }
129
191
  }
130
192
  /* ------------------------------------------------------------------------ */
131
- export { hash, hmac, crc32, ecdsa, eddsa, };
193
+ export { hash, hmac, crc32, ecdsa, eddsa, pemToDer, };
132
194
  /* ------------------------------------------------------------------------ */
@@ -1,3 +1,9 @@
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
+
1
7
  /* eslint-disable */
2
8
  /* ------------------------------------------------------------------------ */
3
9
  import { hex as base16, base58, base64, utf8 } from "@scure/base";
@@ -1,5 +1,11 @@
1
1
  // ----------------------------------------------------------------------------
2
- import { isNumber, isDictionary, isArray } from './type.js';
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
+ import { isNumber, isDict, isArray } from './type.js';
3
9
  // ----------------------------------------------------------------------------
4
10
  const keys = Object.keys; // eslint-disable-line padding-line-between-statements
5
11
  const values = (x) => ((!isArray(x)) ? Object.values(x) : x); // don't copy arrays if they're already arrays
@@ -20,7 +26,7 @@ const isEmpty = (object) => {
20
26
  if (Array.isArray(object)) {
21
27
  return object.length < 1;
22
28
  }
23
- if (isDictionary(object)) {
29
+ if (isDict(object)) {
24
30
  return Object.keys(object).length < 1;
25
31
  }
26
32
  return false;
@@ -1,3 +1,9 @@
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
+
1
7
  /* ------------------------------------------------------------------------ */
2
8
  import { isNode } from './platform.js';
3
9
  /* ------------------------------------------------------------------------ */
@@ -1,3 +1,9 @@
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
+
1
7
  import { ROUND_UP, ROUND_DOWN } from './number.js';
2
8
  import { asFloat } from './type.js';
3
9
  import { NotSupported } from '../errors.js';
@@ -1,3 +1,9 @@
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
+
1
7
  // ------------------------------------------------------------------------
2
8
  //
3
9
  // NB: initially, I used objects for options passing:
@@ -1,3 +1,9 @@
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
+
1
7
  // @ts-nocheck
2
8
  // ----------------------------------------------------------------------------
3
9
  // There's been a lot of messing with this code...
@@ -1,18 +1,35 @@
1
- import { JSEncrypt } from "../../static_dependencies/jsencrypt/JSEncrypt.js";
2
- import { utf8ToBytes } from '@noble/hashes/utils.js';
3
- import { hex as base16, utf8 } from '@scure/base';
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
+ import crypto from 'crypto';
8
+ import { utf8 } from '@scure/base';
4
9
  import { urlencodeBase64, base16ToBinary, base64ToBinary, base64ToBase64Url } from './encode.js';
5
10
  import { eddsa, hmac } from './crypto.js';
6
11
  import { p256 as P256 } from '@noble/curves/nist.js';
7
12
  import { ecdsa } from '../../base/functions/crypto.js';
8
13
  import { ed25519 } from "@noble/curves/ed25519.js";
14
+ // RSASSA-PKCS1-v1_5 signing via Node's built-in `crypto` module. This is synchronous
15
+ // and works in Node.js / Bun / Deno (anything exposing node:crypto). It is NOT available
16
+ // in the browser bundle (rspack stubs the `crypto` module), so rsa throws there: RSA
17
+ // signing is currently unsupported in the browser.
9
18
  function rsa(request, secret, hash) {
10
- const RSA = new JSEncrypt();
11
- const digester = (input) => base16.encode(hash((typeof input === 'string') ? utf8ToBytes(input) : input));
12
- RSA.setPrivateKey(secret);
19
+ if (crypto === undefined || crypto.createSign === undefined) {
20
+ throw new Error('rsa is currently not supported in the browser');
21
+ }
13
22
  // @noble/hashes v2 renamed the digest classes from SHA256 to _SHA256, etc
14
23
  const name = (hash.create()).constructor.name.toLowerCase().replace('_', '');
15
- return RSA.sign(request, digester, name);
24
+ const algorithms = {
25
+ 'sha256': 'RSA-SHA256',
26
+ 'sha384': 'RSA-SHA384',
27
+ 'sha512': 'RSA-SHA512',
28
+ };
29
+ const algorithm = algorithms[name];
30
+ const signer = crypto.createSign(algorithm);
31
+ signer.update(request);
32
+ return signer.sign(secret, 'base64');
16
33
  }
17
34
  function jwt(request, secret, hash, isRSA = false, opts = {}) {
18
35
  let alg = (isRSA ? 'RS' : 'HS') + (hash.outputLen * 8);
@@ -1,3 +1,9 @@
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
+
1
7
  // ----------------------------------------------------------------------------
2
8
  // unCamelCase has to work with the following edge cases
3
9
  //
@@ -1,3 +1,9 @@
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
+
1
7
  //@ts-nocheck
2
8
  /* ------------------------------------------------------------------------ */
3
9
  import { now, sleep } from './time.js';
@@ -1,3 +1,9 @@
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
+
1
7
  // @ts-nocheck
2
8
  const now = Date.now; // TODO: figure out how to utilize performance.now () properly – it's not as easy as it does not return a unix timestamp...
3
9
  const microseconds = () => now() * 1000; // TODO: utilize performance.now for that purpose