ccxt 4.4.87 → 4.4.89

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 (911) hide show
  1. package/README.md +51 -8
  2. package/dist/ccxt.browser.min.js +2 -2
  3. package/dist/cjs/ccxt.js +1 -1
  4. package/dist/cjs/src/abstract/alpaca.js +1 -1
  5. package/dist/cjs/src/abstract/apex.js +1 -1
  6. package/dist/cjs/src/abstract/ascendex.js +1 -1
  7. package/dist/cjs/src/abstract/bigone.js +1 -1
  8. package/dist/cjs/src/abstract/binance.js +1 -1
  9. package/dist/cjs/src/abstract/bingx.js +1 -1
  10. package/dist/cjs/src/abstract/bit2c.js +1 -1
  11. package/dist/cjs/src/abstract/bitbank.js +1 -1
  12. package/dist/cjs/src/abstract/bitbns.js +1 -1
  13. package/dist/cjs/src/abstract/bitfinex.js +1 -1
  14. package/dist/cjs/src/abstract/bitflyer.js +1 -1
  15. package/dist/cjs/src/abstract/bitget.js +1 -1
  16. package/dist/cjs/src/abstract/bithumb.js +1 -1
  17. package/dist/cjs/src/abstract/bitmart.js +1 -1
  18. package/dist/cjs/src/abstract/bitmex.js +1 -1
  19. package/dist/cjs/src/abstract/bitopro.js +1 -1
  20. package/dist/cjs/src/abstract/bitrue.js +1 -1
  21. package/dist/cjs/src/abstract/bitso.js +1 -1
  22. package/dist/cjs/src/abstract/bitstamp.js +1 -1
  23. package/dist/cjs/src/abstract/bitteam.js +1 -1
  24. package/dist/cjs/src/abstract/bittrade.js +1 -1
  25. package/dist/cjs/src/abstract/bitvavo.js +1 -1
  26. package/dist/cjs/src/abstract/blockchaincom.js +1 -1
  27. package/dist/cjs/src/abstract/blofin.js +1 -1
  28. package/dist/cjs/src/abstract/btcalpha.js +1 -1
  29. package/dist/cjs/src/abstract/btcbox.js +1 -1
  30. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  31. package/dist/cjs/src/abstract/btcturk.js +1 -1
  32. package/dist/cjs/src/abstract/bybit.js +1 -1
  33. package/dist/cjs/src/abstract/cex.js +1 -1
  34. package/dist/cjs/src/abstract/coinbase.js +1 -1
  35. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  36. package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
  37. package/dist/cjs/src/abstract/coincatch.js +1 -1
  38. package/dist/cjs/src/abstract/coincheck.js +1 -1
  39. package/dist/cjs/src/abstract/coinex.js +1 -1
  40. package/dist/cjs/src/abstract/coinlist.js +1 -1
  41. package/dist/cjs/src/abstract/coinmate.js +1 -1
  42. package/dist/cjs/src/abstract/coinmetro.js +1 -1
  43. package/dist/cjs/src/abstract/coinone.js +1 -1
  44. package/dist/cjs/src/abstract/coinsph.js +1 -1
  45. package/dist/cjs/src/abstract/coinspot.js +1 -1
  46. package/dist/cjs/src/abstract/cryptocom.js +1 -1
  47. package/dist/cjs/src/abstract/cryptomus.js +1 -1
  48. package/dist/cjs/src/abstract/defx.js +1 -1
  49. package/dist/cjs/src/abstract/delta.js +1 -1
  50. package/dist/cjs/src/abstract/deribit.js +1 -1
  51. package/dist/cjs/src/abstract/derive.js +1 -1
  52. package/dist/cjs/src/abstract/digifinex.js +1 -1
  53. package/dist/cjs/src/abstract/ellipx.js +1 -1
  54. package/dist/cjs/src/abstract/exmo.js +1 -1
  55. package/dist/cjs/src/abstract/gate.js +1 -1
  56. package/dist/cjs/src/abstract/gemini.js +1 -1
  57. package/dist/cjs/src/abstract/hashkey.js +1 -1
  58. package/dist/cjs/src/abstract/hitbtc.js +1 -1
  59. package/dist/cjs/src/abstract/hollaex.js +1 -1
  60. package/dist/cjs/src/abstract/htx.js +1 -1
  61. package/dist/cjs/src/abstract/hyperliquid.js +1 -1
  62. package/dist/cjs/src/abstract/independentreserve.js +1 -1
  63. package/dist/cjs/src/abstract/indodax.js +1 -1
  64. package/dist/cjs/src/abstract/kraken.js +1 -1
  65. package/dist/cjs/src/abstract/krakenfutures.js +1 -1
  66. package/dist/cjs/src/abstract/kucoin.js +1 -1
  67. package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
  68. package/dist/cjs/src/abstract/latoken.js +1 -1
  69. package/dist/cjs/src/abstract/lbank.js +1 -1
  70. package/dist/cjs/src/abstract/luno.js +1 -1
  71. package/dist/cjs/src/abstract/mercado.js +1 -1
  72. package/dist/cjs/src/abstract/mexc.js +1 -1
  73. package/dist/cjs/src/abstract/modetrade.js +1 -1
  74. package/dist/cjs/src/abstract/ndax.js +1 -1
  75. package/dist/cjs/src/abstract/novadax.js +1 -1
  76. package/dist/cjs/src/abstract/oceanex.js +1 -1
  77. package/dist/cjs/src/abstract/okcoin.js +1 -1
  78. package/dist/cjs/src/abstract/okx.js +1 -1
  79. package/dist/cjs/src/abstract/onetrading.js +1 -1
  80. package/dist/cjs/src/abstract/oxfun.js +1 -1
  81. package/dist/cjs/src/abstract/p2b.js +1 -1
  82. package/dist/cjs/src/abstract/paradex.js +1 -1
  83. package/dist/cjs/src/abstract/paymium.js +1 -1
  84. package/dist/cjs/src/abstract/phemex.js +1 -1
  85. package/dist/cjs/src/abstract/poloniex.js +1 -1
  86. package/dist/cjs/src/abstract/probit.js +1 -1
  87. package/dist/cjs/src/abstract/timex.js +1 -1
  88. package/dist/cjs/src/abstract/tokocrypto.js +1 -1
  89. package/dist/cjs/src/abstract/tradeogre.js +1 -1
  90. package/dist/cjs/src/abstract/upbit.js +1 -1
  91. package/dist/cjs/src/abstract/vertex.js +1 -1
  92. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  93. package/dist/cjs/src/abstract/whitebit.js +1 -1
  94. package/dist/cjs/src/abstract/woo.js +1 -1
  95. package/dist/cjs/src/abstract/woofipro.js +1 -1
  96. package/dist/cjs/src/abstract/xt.js +1 -1
  97. package/dist/cjs/src/abstract/yobit.js +1 -1
  98. package/dist/cjs/src/abstract/zaif.js +1 -1
  99. package/dist/cjs/src/abstract/zonda.js +1 -1
  100. package/dist/cjs/src/alpaca.js +1 -1
  101. package/dist/cjs/src/apex.js +1 -1
  102. package/dist/cjs/src/ascendex.js +1 -1
  103. package/dist/cjs/src/base/Exchange.js +7 -3
  104. package/dist/cjs/src/base/Precise.js +0 -6
  105. package/dist/cjs/src/base/errors.js +0 -6
  106. package/dist/cjs/src/base/functions/crypto.js +1 -1
  107. package/dist/cjs/src/base/functions/encode.js +1 -1
  108. package/dist/cjs/src/base/functions/misc.js +0 -1
  109. package/dist/cjs/src/base/functions/number.js +0 -6
  110. package/dist/cjs/src/base/functions/platform.js +0 -6
  111. package/dist/cjs/src/base/functions/rsa.js +0 -1
  112. package/dist/cjs/src/base/functions/string.js +0 -6
  113. package/dist/cjs/src/base/functions/throttle.js +1 -1
  114. package/dist/cjs/src/base/functions/time.js +0 -6
  115. package/dist/cjs/src/base/functions/totp.js +0 -1
  116. package/dist/cjs/src/base/functions/type.js +0 -6
  117. package/dist/cjs/src/base/functions.js +1 -1
  118. package/dist/cjs/src/base/ws/Cache.js +0 -6
  119. package/dist/cjs/src/base/ws/Client.js +0 -1
  120. package/dist/cjs/src/base/ws/Future.js +1 -1
  121. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  122. package/dist/cjs/src/base/ws/OrderBookSide.js +0 -6
  123. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  124. package/dist/cjs/src/bequant.js +1 -1
  125. package/dist/cjs/src/bigone.js +1 -1
  126. package/dist/cjs/src/binance.js +1 -1
  127. package/dist/cjs/src/binancecoinm.js +1 -1
  128. package/dist/cjs/src/binanceus.js +1 -1
  129. package/dist/cjs/src/binanceusdm.js +1 -1
  130. package/dist/cjs/src/bingx.js +48 -22
  131. package/dist/cjs/src/bit2c.js +1 -1
  132. package/dist/cjs/src/bitbank.js +1 -1
  133. package/dist/cjs/src/bitbns.js +1 -1
  134. package/dist/cjs/src/bitfinex.js +1 -1
  135. package/dist/cjs/src/bitflyer.js +1 -1
  136. package/dist/cjs/src/bitget.js +2 -2
  137. package/dist/cjs/src/bithumb.js +1 -1
  138. package/dist/cjs/src/bitmart.js +1 -1
  139. package/dist/cjs/src/bitmex.js +1 -1
  140. package/dist/cjs/src/bitopro.js +1 -1
  141. package/dist/cjs/src/bitrue.js +1 -1
  142. package/dist/cjs/src/bitso.js +1 -1
  143. package/dist/cjs/src/bitstamp.js +1 -1
  144. package/dist/cjs/src/bitteam.js +1 -1
  145. package/dist/cjs/src/bittrade.js +1 -1
  146. package/dist/cjs/src/bitvavo.js +34 -0
  147. package/dist/cjs/src/blockchaincom.js +1 -1
  148. package/dist/cjs/src/blofin.js +1 -1
  149. package/dist/cjs/src/btcalpha.js +36 -1
  150. package/dist/cjs/src/btcbox.js +1 -1
  151. package/dist/cjs/src/btcmarkets.js +1 -1
  152. package/dist/cjs/src/btcturk.js +1 -1
  153. package/dist/cjs/src/bybit.js +20 -81
  154. package/dist/cjs/src/cex.js +1 -1
  155. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  156. package/dist/cjs/src/coincatch.js +1 -1
  157. package/dist/cjs/src/coincheck.js +1 -1
  158. package/dist/cjs/src/coinex.js +1 -1
  159. package/dist/cjs/src/coinlist.js +0 -1
  160. package/dist/cjs/src/coinmate.js +1 -1
  161. package/dist/cjs/src/coinmetro.js +1 -1
  162. package/dist/cjs/src/coinone.js +1 -1
  163. package/dist/cjs/src/coinsph.js +0 -1
  164. package/dist/cjs/src/coinspot.js +1 -1
  165. package/dist/cjs/src/cryptocom.js +55 -1
  166. package/dist/cjs/src/cryptomus.js +1 -1
  167. package/dist/cjs/src/defx.js +1 -1
  168. package/dist/cjs/src/delta.js +1 -1
  169. package/dist/cjs/src/deribit.js +1 -1
  170. package/dist/cjs/src/derive.js +1 -1
  171. package/dist/cjs/src/digifinex.js +41 -110
  172. package/dist/cjs/src/ellipx.js +1 -1
  173. package/dist/cjs/src/exmo.js +1 -1
  174. package/dist/cjs/src/fmfwio.js +1 -1
  175. package/dist/cjs/src/gate.js +13 -6
  176. package/dist/cjs/src/gateio.js +1 -1
  177. package/dist/cjs/src/gemini.js +1 -1
  178. package/dist/cjs/src/hashkey.js +16 -29
  179. package/dist/cjs/src/hitbtc.js +0 -1
  180. package/dist/cjs/src/hollaex.js +1 -1
  181. package/dist/cjs/src/htx.js +1 -1
  182. package/dist/cjs/src/huobi.js +1 -1
  183. package/dist/cjs/src/hyperliquid.js +1 -1
  184. package/dist/cjs/src/independentreserve.js +1 -1
  185. package/dist/cjs/src/indodax.js +1 -1
  186. package/dist/cjs/src/kraken.js +31 -54
  187. package/dist/cjs/src/krakenfutures.js +1 -1
  188. package/dist/cjs/src/kucoin.js +1 -1
  189. package/dist/cjs/src/kucoinfutures.js +1 -1
  190. package/dist/cjs/src/latoken.js +1 -1
  191. package/dist/cjs/src/lbank.js +1 -1
  192. package/dist/cjs/src/luno.js +93 -1
  193. package/dist/cjs/src/mercado.js +1 -1
  194. package/dist/cjs/src/mexc.js +1 -1
  195. package/dist/cjs/src/modetrade.js +8 -8
  196. package/dist/cjs/src/myokx.js +1 -1
  197. package/dist/cjs/src/ndax.js +1 -1
  198. package/dist/cjs/src/novadax.js +1 -1
  199. package/dist/cjs/src/oceanex.js +1 -1
  200. package/dist/cjs/src/okcoin.js +1 -1
  201. package/dist/cjs/src/okx.js +3 -2
  202. package/dist/cjs/src/okxus.js +1 -1
  203. package/dist/cjs/src/onetrading.js +1 -1
  204. package/dist/cjs/src/oxfun.js +1 -1
  205. package/dist/cjs/src/p2b.js +1 -1
  206. package/dist/cjs/src/paradex.js +1 -1
  207. package/dist/cjs/src/paymium.js +1 -1
  208. package/dist/cjs/src/phemex.js +16 -8
  209. package/dist/cjs/src/poloniex.js +1 -1
  210. package/dist/cjs/src/pro/alpaca.js +1 -1
  211. package/dist/cjs/src/pro/apex.js +1 -1
  212. package/dist/cjs/src/pro/ascendex.js +1 -1
  213. package/dist/cjs/src/pro/bequant.js +1 -1
  214. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  215. package/dist/cjs/src/pro/binanceus.js +1 -1
  216. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  217. package/dist/cjs/src/pro/bingx.js +1 -1
  218. package/dist/cjs/src/pro/bitfinex.js +1 -1
  219. package/dist/cjs/src/pro/bitget.js +1 -1
  220. package/dist/cjs/src/pro/bithumb.js +1 -1
  221. package/dist/cjs/src/pro/bitmart.js +1 -1
  222. package/dist/cjs/src/pro/bitmex.js +1 -1
  223. package/dist/cjs/src/pro/bitrue.js +1 -1
  224. package/dist/cjs/src/pro/bitstamp.js +1 -1
  225. package/dist/cjs/src/pro/bitvavo.js +1 -1
  226. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  227. package/dist/cjs/src/pro/blofin.js +1 -1
  228. package/dist/cjs/src/pro/bybit.js +1 -1
  229. package/dist/cjs/src/pro/cex.js +1 -1
  230. package/dist/cjs/src/pro/coinbase.js +3 -1
  231. package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
  232. package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
  233. package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
  234. package/dist/cjs/src/pro/coincatch.js +1 -1
  235. package/dist/cjs/src/pro/coincheck.js +1 -1
  236. package/dist/cjs/src/pro/coinex.js +1 -1
  237. package/dist/cjs/src/pro/coinone.js +1 -1
  238. package/dist/cjs/src/pro/cryptocom.js +28 -1
  239. package/dist/cjs/src/pro/defx.js +1 -1
  240. package/dist/cjs/src/pro/deribit.js +1 -1
  241. package/dist/cjs/src/pro/exmo.js +1 -1
  242. package/dist/cjs/src/pro/gate.js +1 -1
  243. package/dist/cjs/src/pro/gateio.js +1 -1
  244. package/dist/cjs/src/pro/gemini.js +1 -1
  245. package/dist/cjs/src/pro/hashkey.js +1 -1
  246. package/dist/cjs/src/pro/hitbtc.js +1 -1
  247. package/dist/cjs/src/pro/hollaex.js +1 -1
  248. package/dist/cjs/src/pro/htx.js +1 -1
  249. package/dist/cjs/src/pro/huobi.js +1 -1
  250. package/dist/cjs/src/pro/hyperliquid.js +1 -1
  251. package/dist/cjs/src/pro/independentreserve.js +1 -1
  252. package/dist/cjs/src/pro/kraken.js +4 -12
  253. package/dist/cjs/src/pro/krakenfutures.js +1 -1
  254. package/dist/cjs/src/pro/kucoin.js +1 -1
  255. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  256. package/dist/cjs/src/pro/lbank.js +0 -1
  257. package/dist/cjs/src/pro/luno.js +1 -1
  258. package/dist/cjs/src/pro/mexc.js +1 -1
  259. package/dist/cjs/src/pro/myokx.js +1 -1
  260. package/dist/cjs/src/pro/ndax.js +1 -1
  261. package/dist/cjs/src/pro/okcoin.js +1 -1
  262. package/dist/cjs/src/pro/okx.js +1 -1
  263. package/dist/cjs/src/pro/okxus.js +1 -1
  264. package/dist/cjs/src/pro/onetrading.js +1 -1
  265. package/dist/cjs/src/pro/oxfun.js +1 -1
  266. package/dist/cjs/src/pro/p2b.js +1 -1
  267. package/dist/cjs/src/pro/paradex.js +1 -1
  268. package/dist/cjs/src/pro/phemex.js +1 -1
  269. package/dist/cjs/src/pro/poloniex.js +1 -1
  270. package/dist/cjs/src/pro/probit.js +1 -1
  271. package/dist/cjs/src/pro/tradeogre.js +1 -1
  272. package/dist/cjs/src/pro/upbit.js +1 -1
  273. package/dist/cjs/src/pro/whitebit.js +1 -1
  274. package/dist/cjs/src/pro/xt.js +1 -1
  275. package/dist/cjs/src/probit.js +1 -1
  276. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +0 -6
  277. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  278. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  279. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +0 -1
  280. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +0 -1
  281. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +0 -1
  282. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +0 -1
  283. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +0 -1
  284. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -1
  285. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +0 -1
  286. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +0 -1
  287. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +0 -1
  288. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +0 -1
  289. package/dist/cjs/src/static_dependencies/ethers/fragments.js +0 -6
  290. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  291. package/dist/cjs/src/static_dependencies/ethers/index.js +10 -1
  292. package/dist/cjs/src/static_dependencies/ethers/interface.js +0 -6
  293. package/dist/cjs/src/static_dependencies/ethers/typed.js +0 -6
  294. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +13 -1
  295. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +6 -1
  296. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +9 -1
  297. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +0 -6
  298. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  299. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +7 -1
  300. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +5 -1
  301. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +0 -6
  302. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +8 -1
  303. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  304. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -1
  305. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -1
  306. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  307. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  308. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  309. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  310. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -1
  311. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  312. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  313. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  314. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  315. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  316. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  317. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  318. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +0 -6
  319. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  320. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  321. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  322. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -1
  323. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  324. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  325. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  326. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  327. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  328. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  329. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  330. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  331. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +0 -6
  332. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +0 -1
  333. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +0 -6
  334. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +0 -6
  335. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +0 -1
  336. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +0 -1
  337. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +0 -1
  338. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +0 -1
  339. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +0 -1
  340. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +0 -1
  341. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
  342. package/dist/cjs/src/static_dependencies/node-fetch/body.js +5 -1
  343. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +0 -1
  344. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +0 -6
  345. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -1
  346. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +5 -1
  347. package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -1
  348. package/dist/cjs/src/static_dependencies/node-fetch/request.js +7 -1
  349. package/dist/cjs/src/static_dependencies/node-fetch/response.js +5 -1
  350. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  351. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  352. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +0 -6
  353. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +0 -1
  354. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +0 -1
  355. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -1
  356. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -1
  357. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  358. package/dist/cjs/src/static_dependencies/scure-base/index.js +0 -6
  359. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  360. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  361. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +0 -6
  362. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  363. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  364. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +0 -6
  365. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +0 -6
  366. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +0 -6
  367. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  368. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  369. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  370. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -1
  371. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -1
  372. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  373. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  374. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  375. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -1
  376. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  377. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -1
  378. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -1
  379. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  380. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -1
  381. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -1
  382. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -1
  383. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  384. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +4 -1
  385. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +0 -1
  386. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +3 -1
  387. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +0 -1
  388. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +0 -1
  389. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +0 -1
  390. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +0 -1
  391. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  392. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +0 -6
  393. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  394. package/dist/cjs/src/timex.js +0 -1
  395. package/dist/cjs/src/tokocrypto.js +1 -1
  396. package/dist/cjs/src/tradeogre.js +1 -1
  397. package/dist/cjs/src/upbit.js +1 -1
  398. package/dist/cjs/src/vertex.js +1 -1
  399. package/dist/cjs/src/wavesexchange.js +1 -1
  400. package/dist/cjs/src/whitebit.js +1 -1
  401. package/dist/cjs/src/woo.js +1 -1
  402. package/dist/cjs/src/woofipro.js +1 -1
  403. package/dist/cjs/src/xt.js +1 -1
  404. package/dist/cjs/src/yobit.js +1 -1
  405. package/dist/cjs/src/zaif.js +1 -1
  406. package/dist/cjs/src/zonda.js +1 -1
  407. package/js/ccxt.d.ts +1 -1
  408. package/js/ccxt.js +1 -7
  409. package/js/src/abstract/alpaca.js +0 -6
  410. package/js/src/abstract/apex.js +0 -6
  411. package/js/src/abstract/ascendex.js +0 -6
  412. package/js/src/abstract/bequant.js +0 -6
  413. package/js/src/abstract/bigone.js +0 -6
  414. package/js/src/abstract/binance.js +0 -6
  415. package/js/src/abstract/binancecoinm.js +0 -6
  416. package/js/src/abstract/binanceus.js +0 -6
  417. package/js/src/abstract/binanceusdm.js +0 -6
  418. package/js/src/abstract/bingx.js +0 -6
  419. package/js/src/abstract/bit2c.js +0 -6
  420. package/js/src/abstract/bitbank.js +0 -6
  421. package/js/src/abstract/bitbns.js +0 -6
  422. package/js/src/abstract/bitfinex.js +0 -6
  423. package/js/src/abstract/bitflyer.js +0 -6
  424. package/js/src/abstract/bitget.js +0 -6
  425. package/js/src/abstract/bithumb.js +0 -6
  426. package/js/src/abstract/bitmart.js +0 -6
  427. package/js/src/abstract/bitmex.js +0 -6
  428. package/js/src/abstract/bitopro.js +0 -6
  429. package/js/src/abstract/bitrue.js +0 -6
  430. package/js/src/abstract/bitso.js +0 -6
  431. package/js/src/abstract/bitstamp.js +0 -6
  432. package/js/src/abstract/bitteam.js +0 -6
  433. package/js/src/abstract/bittrade.js +0 -6
  434. package/js/src/abstract/bitvavo.js +0 -6
  435. package/js/src/abstract/blockchaincom.js +0 -6
  436. package/js/src/abstract/blofin.js +0 -6
  437. package/js/src/abstract/btcalpha.js +0 -6
  438. package/js/src/abstract/btcbox.js +0 -6
  439. package/js/src/abstract/btcmarkets.js +0 -6
  440. package/js/src/abstract/btcturk.js +0 -6
  441. package/js/src/abstract/bybit.js +0 -6
  442. package/js/src/abstract/cex.js +0 -6
  443. package/js/src/abstract/coinbase.js +0 -6
  444. package/js/src/abstract/coinbaseadvanced.js +0 -6
  445. package/js/src/abstract/coinbaseexchange.js +0 -6
  446. package/js/src/abstract/coinbaseinternational.js +0 -6
  447. package/js/src/abstract/coincatch.js +0 -6
  448. package/js/src/abstract/coincheck.js +0 -6
  449. package/js/src/abstract/coinex.js +0 -6
  450. package/js/src/abstract/coinlist.js +0 -6
  451. package/js/src/abstract/coinmate.js +0 -6
  452. package/js/src/abstract/coinmetro.js +0 -6
  453. package/js/src/abstract/coinone.js +0 -6
  454. package/js/src/abstract/coinsph.js +0 -6
  455. package/js/src/abstract/coinspot.js +0 -6
  456. package/js/src/abstract/cryptocom.d.ts +2 -0
  457. package/js/src/abstract/cryptocom.js +0 -6
  458. package/js/src/abstract/cryptomus.js +0 -6
  459. package/js/src/abstract/defx.js +0 -6
  460. package/js/src/abstract/delta.js +0 -6
  461. package/js/src/abstract/deribit.js +0 -6
  462. package/js/src/abstract/derive.js +0 -6
  463. package/js/src/abstract/digifinex.js +0 -6
  464. package/js/src/abstract/ellipx.js +0 -6
  465. package/js/src/abstract/exmo.js +0 -6
  466. package/js/src/abstract/fmfwio.js +0 -6
  467. package/js/src/abstract/gate.js +0 -6
  468. package/js/src/abstract/gateio.js +0 -6
  469. package/js/src/abstract/gemini.js +0 -6
  470. package/js/src/abstract/hashkey.js +0 -6
  471. package/js/src/abstract/hitbtc.js +0 -6
  472. package/js/src/abstract/hollaex.js +0 -6
  473. package/js/src/abstract/htx.js +0 -6
  474. package/js/src/abstract/huobi.js +0 -6
  475. package/js/src/abstract/hyperliquid.js +0 -6
  476. package/js/src/abstract/independentreserve.js +0 -6
  477. package/js/src/abstract/indodax.js +0 -6
  478. package/js/src/abstract/kraken.js +0 -6
  479. package/js/src/abstract/krakenfutures.js +0 -6
  480. package/js/src/abstract/kucoin.js +0 -6
  481. package/js/src/abstract/kucoinfutures.js +0 -6
  482. package/js/src/abstract/latoken.js +0 -6
  483. package/js/src/abstract/lbank.js +0 -6
  484. package/js/src/abstract/luno.d.ts +1 -0
  485. package/js/src/abstract/luno.js +0 -6
  486. package/js/src/abstract/mercado.js +0 -6
  487. package/js/src/abstract/mexc.js +0 -6
  488. package/js/src/abstract/modetrade.js +0 -6
  489. package/js/src/abstract/myokx.js +0 -6
  490. package/js/src/abstract/ndax.js +0 -6
  491. package/js/src/abstract/novadax.js +0 -6
  492. package/js/src/abstract/oceanex.js +0 -6
  493. package/js/src/abstract/okcoin.js +0 -6
  494. package/js/src/abstract/okx.js +0 -6
  495. package/js/src/abstract/okxus.js +0 -6
  496. package/js/src/abstract/onetrading.js +0 -6
  497. package/js/src/abstract/oxfun.js +0 -6
  498. package/js/src/abstract/p2b.js +0 -6
  499. package/js/src/abstract/paradex.js +0 -6
  500. package/js/src/abstract/paymium.js +0 -6
  501. package/js/src/abstract/phemex.js +0 -6
  502. package/js/src/abstract/poloniex.js +0 -6
  503. package/js/src/abstract/probit.js +0 -6
  504. package/js/src/abstract/timex.js +0 -6
  505. package/js/src/abstract/tokocrypto.js +0 -6
  506. package/js/src/abstract/tradeogre.js +0 -6
  507. package/js/src/abstract/upbit.js +0 -6
  508. package/js/src/abstract/vertex.js +0 -6
  509. package/js/src/abstract/wavesexchange.js +0 -6
  510. package/js/src/abstract/whitebit.js +0 -6
  511. package/js/src/abstract/woo.js +0 -6
  512. package/js/src/abstract/woofipro.js +0 -6
  513. package/js/src/abstract/xt.js +0 -6
  514. package/js/src/abstract/yobit.js +0 -6
  515. package/js/src/abstract/zaif.js +0 -6
  516. package/js/src/abstract/zonda.js +0 -6
  517. package/js/src/alpaca.js +0 -6
  518. package/js/src/apex.js +0 -6
  519. package/js/src/ascendex.js +0 -6
  520. package/js/src/base/Exchange.d.ts +4 -2
  521. package/js/src/base/Exchange.js +7 -9
  522. package/js/src/base/Precise.js +0 -6
  523. package/js/src/base/errorHierarchy.js +0 -6
  524. package/js/src/base/errors.js +0 -6
  525. package/js/src/base/functions/crypto.js +0 -6
  526. package/js/src/base/functions/encode.js +0 -6
  527. package/js/src/base/functions/generic.js +0 -6
  528. package/js/src/base/functions/misc.js +0 -6
  529. package/js/src/base/functions/number.js +0 -6
  530. package/js/src/base/functions/platform.js +0 -6
  531. package/js/src/base/functions/rsa.js +0 -6
  532. package/js/src/base/functions/string.js +0 -6
  533. package/js/src/base/functions/throttle.js +0 -6
  534. package/js/src/base/functions/time.js +0 -6
  535. package/js/src/base/functions/totp.js +0 -6
  536. package/js/src/base/functions/type.js +0 -6
  537. package/js/src/base/functions.js +0 -6
  538. package/js/src/base/types.js +0 -6
  539. package/js/src/base/ws/Cache.js +0 -6
  540. package/js/src/base/ws/Client.js +0 -6
  541. package/js/src/base/ws/Future.js +0 -6
  542. package/js/src/base/ws/OrderBook.js +0 -6
  543. package/js/src/base/ws/OrderBookSide.js +0 -6
  544. package/js/src/base/ws/WsClient.js +0 -6
  545. package/js/src/base/ws/functions.js +0 -6
  546. package/js/src/bequant.js +0 -6
  547. package/js/src/bigone.js +0 -6
  548. package/js/src/binance.js +0 -6
  549. package/js/src/binancecoinm.js +0 -6
  550. package/js/src/binanceus.js +0 -6
  551. package/js/src/binanceusdm.js +0 -6
  552. package/js/src/bingx.d.ts +8 -4
  553. package/js/src/bingx.js +47 -27
  554. package/js/src/bit2c.js +0 -6
  555. package/js/src/bitbank.js +0 -6
  556. package/js/src/bitbns.js +0 -6
  557. package/js/src/bitfinex.js +0 -6
  558. package/js/src/bitflyer.js +0 -6
  559. package/js/src/bitget.js +1 -7
  560. package/js/src/bithumb.js +0 -6
  561. package/js/src/bitmart.js +0 -6
  562. package/js/src/bitmex.js +0 -6
  563. package/js/src/bitopro.js +0 -6
  564. package/js/src/bitrue.js +0 -6
  565. package/js/src/bitso.js +0 -6
  566. package/js/src/bitstamp.js +0 -6
  567. package/js/src/bitteam.js +0 -6
  568. package/js/src/bittrade.js +0 -6
  569. package/js/src/bitvavo.js +34 -6
  570. package/js/src/blockchaincom.js +0 -6
  571. package/js/src/blofin.js +0 -6
  572. package/js/src/btcalpha.js +35 -6
  573. package/js/src/btcbox.js +0 -6
  574. package/js/src/btcmarkets.js +0 -6
  575. package/js/src/btcturk.js +0 -6
  576. package/js/src/bybit.js +19 -86
  577. package/js/src/cex.js +0 -6
  578. package/js/src/coinbase.js +0 -6
  579. package/js/src/coinbaseadvanced.js +0 -6
  580. package/js/src/coinbaseexchange.d.ts +1 -1
  581. package/js/src/coinbaseexchange.js +0 -6
  582. package/js/src/coinbaseinternational.js +0 -6
  583. package/js/src/coincatch.js +0 -6
  584. package/js/src/coincheck.js +0 -6
  585. package/js/src/coinex.js +0 -6
  586. package/js/src/coinlist.js +0 -6
  587. package/js/src/coinmate.js +0 -6
  588. package/js/src/coinmetro.js +0 -6
  589. package/js/src/coinone.js +0 -6
  590. package/js/src/coinsph.js +0 -6
  591. package/js/src/coinspot.js +0 -6
  592. package/js/src/cryptocom.d.ts +17 -0
  593. package/js/src/cryptocom.js +54 -6
  594. package/js/src/cryptomus.js +0 -6
  595. package/js/src/defx.js +0 -6
  596. package/js/src/delta.js +0 -6
  597. package/js/src/deribit.js +0 -6
  598. package/js/src/derive.js +0 -6
  599. package/js/src/digifinex.js +40 -115
  600. package/js/src/ellipx.js +0 -6
  601. package/js/src/exmo.js +0 -6
  602. package/js/src/fmfwio.js +0 -6
  603. package/js/src/gate.d.ts +1 -1
  604. package/js/src/gate.js +12 -11
  605. package/js/src/gateio.js +0 -6
  606. package/js/src/gemini.js +0 -6
  607. package/js/src/hashkey.d.ts +0 -1
  608. package/js/src/hashkey.js +15 -34
  609. package/js/src/hitbtc.js +0 -6
  610. package/js/src/hollaex.js +0 -6
  611. package/js/src/htx.js +0 -6
  612. package/js/src/huobi.js +0 -6
  613. package/js/src/hyperliquid.js +0 -6
  614. package/js/src/independentreserve.js +0 -6
  615. package/js/src/indodax.js +0 -6
  616. package/js/src/kraken.d.ts +0 -1
  617. package/js/src/kraken.js +30 -59
  618. package/js/src/krakenfutures.js +0 -6
  619. package/js/src/kucoin.js +0 -6
  620. package/js/src/kucoinfutures.js +0 -6
  621. package/js/src/latoken.js +0 -6
  622. package/js/src/lbank.js +0 -6
  623. package/js/src/luno.d.ts +9 -1
  624. package/js/src/luno.js +92 -6
  625. package/js/src/mercado.js +0 -6
  626. package/js/src/mexc.js +0 -6
  627. package/js/src/modetrade.js +7 -13
  628. package/js/src/myokx.js +0 -6
  629. package/js/src/ndax.js +0 -6
  630. package/js/src/novadax.js +0 -6
  631. package/js/src/oceanex.js +0 -6
  632. package/js/src/okcoin.js +0 -6
  633. package/js/src/okx.js +2 -7
  634. package/js/src/okxus.js +0 -6
  635. package/js/src/onetrading.js +0 -6
  636. package/js/src/oxfun.js +0 -6
  637. package/js/src/p2b.js +0 -6
  638. package/js/src/paradex.js +0 -6
  639. package/js/src/paymium.js +0 -6
  640. package/js/src/phemex.d.ts +1 -0
  641. package/js/src/phemex.js +16 -14
  642. package/js/src/poloniex.js +0 -6
  643. package/js/src/pro/alpaca.js +0 -6
  644. package/js/src/pro/apex.js +0 -6
  645. package/js/src/pro/ascendex.js +0 -6
  646. package/js/src/pro/bequant.js +0 -6
  647. package/js/src/pro/binance.js +0 -6
  648. package/js/src/pro/binancecoinm.js +0 -6
  649. package/js/src/pro/binanceus.js +0 -6
  650. package/js/src/pro/binanceusdm.js +0 -6
  651. package/js/src/pro/bingx.js +0 -6
  652. package/js/src/pro/bitfinex.js +0 -6
  653. package/js/src/pro/bitget.js +0 -6
  654. package/js/src/pro/bithumb.js +0 -6
  655. package/js/src/pro/bitmart.js +0 -6
  656. package/js/src/pro/bitmex.js +0 -6
  657. package/js/src/pro/bitopro.js +0 -6
  658. package/js/src/pro/bitrue.js +0 -6
  659. package/js/src/pro/bitstamp.js +0 -6
  660. package/js/src/pro/bittrade.js +0 -6
  661. package/js/src/pro/bitvavo.js +0 -6
  662. package/js/src/pro/blockchaincom.js +0 -6
  663. package/js/src/pro/blofin.js +0 -6
  664. package/js/src/pro/bybit.js +0 -6
  665. package/js/src/pro/cex.js +0 -6
  666. package/js/src/pro/coinbase.js +2 -6
  667. package/js/src/pro/coinbaseadvanced.js +0 -6
  668. package/js/src/pro/coinbaseexchange.js +0 -6
  669. package/js/src/pro/coinbaseinternational.js +0 -6
  670. package/js/src/pro/coincatch.js +0 -6
  671. package/js/src/pro/coincheck.js +0 -6
  672. package/js/src/pro/coinex.js +0 -6
  673. package/js/src/pro/coinone.js +0 -6
  674. package/js/src/pro/cryptocom.d.ts +16 -0
  675. package/js/src/pro/cryptocom.js +27 -6
  676. package/js/src/pro/defx.js +0 -6
  677. package/js/src/pro/deribit.js +0 -6
  678. package/js/src/pro/derive.js +0 -6
  679. package/js/src/pro/exmo.js +0 -6
  680. package/js/src/pro/gate.js +0 -6
  681. package/js/src/pro/gateio.js +0 -6
  682. package/js/src/pro/gemini.js +0 -6
  683. package/js/src/pro/hashkey.js +0 -6
  684. package/js/src/pro/hitbtc.js +0 -6
  685. package/js/src/pro/hollaex.js +0 -6
  686. package/js/src/pro/htx.js +0 -6
  687. package/js/src/pro/huobi.js +0 -6
  688. package/js/src/pro/hyperliquid.js +0 -6
  689. package/js/src/pro/independentreserve.js +0 -6
  690. package/js/src/pro/kraken.js +3 -17
  691. package/js/src/pro/krakenfutures.js +0 -6
  692. package/js/src/pro/kucoin.js +0 -6
  693. package/js/src/pro/kucoinfutures.js +0 -6
  694. package/js/src/pro/lbank.js +0 -6
  695. package/js/src/pro/luno.js +0 -6
  696. package/js/src/pro/mexc.js +0 -6
  697. package/js/src/pro/modetrade.js +0 -6
  698. package/js/src/pro/myokx.js +0 -6
  699. package/js/src/pro/ndax.js +0 -6
  700. package/js/src/pro/okcoin.js +0 -6
  701. package/js/src/pro/okx.js +0 -6
  702. package/js/src/pro/okxus.js +0 -6
  703. package/js/src/pro/onetrading.js +0 -6
  704. package/js/src/pro/oxfun.js +0 -6
  705. package/js/src/pro/p2b.js +0 -6
  706. package/js/src/pro/paradex.js +0 -6
  707. package/js/src/pro/phemex.js +0 -6
  708. package/js/src/pro/poloniex.js +0 -6
  709. package/js/src/pro/probit.js +0 -6
  710. package/js/src/pro/tradeogre.js +0 -6
  711. package/js/src/pro/upbit.js +0 -6
  712. package/js/src/pro/vertex.js +0 -6
  713. package/js/src/pro/whitebit.js +0 -6
  714. package/js/src/pro/woo.js +0 -6
  715. package/js/src/pro/woofipro.js +0 -6
  716. package/js/src/pro/xt.js +0 -6
  717. package/js/src/probit.js +0 -6
  718. package/js/src/static_dependencies/ethers/abi-coder.js +0 -6
  719. package/js/src/static_dependencies/ethers/address/address.js +0 -6
  720. package/js/src/static_dependencies/ethers/address/checks.js +0 -6
  721. package/js/src/static_dependencies/ethers/address/contract-address.js +0 -6
  722. package/js/src/static_dependencies/ethers/address/index.js +0 -6
  723. package/js/src/static_dependencies/ethers/bytes32.js +0 -6
  724. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  725. package/js/src/static_dependencies/ethers/coders/address.js +0 -6
  726. package/js/src/static_dependencies/ethers/coders/anonymous.js +0 -6
  727. package/js/src/static_dependencies/ethers/coders/array.js +0 -6
  728. package/js/src/static_dependencies/ethers/coders/boolean.js +0 -6
  729. package/js/src/static_dependencies/ethers/coders/bytes.js +0 -6
  730. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -6
  731. package/js/src/static_dependencies/ethers/coders/null.js +0 -6
  732. package/js/src/static_dependencies/ethers/coders/number.js +0 -6
  733. package/js/src/static_dependencies/ethers/coders/string.js +0 -6
  734. package/js/src/static_dependencies/ethers/coders/tuple.js +0 -6
  735. package/js/src/static_dependencies/ethers/fragments.js +0 -6
  736. package/js/src/static_dependencies/ethers/hash/index.js +0 -6
  737. package/js/src/static_dependencies/ethers/hash/solidity.js +0 -6
  738. package/js/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  739. package/js/src/static_dependencies/ethers/index.js +0 -6
  740. package/js/src/static_dependencies/ethers/interface.js +0 -6
  741. package/js/src/static_dependencies/ethers/typed.js +0 -6
  742. package/js/src/static_dependencies/ethers/utils/base58.js +0 -6
  743. package/js/src/static_dependencies/ethers/utils/base64-browser.js +0 -6
  744. package/js/src/static_dependencies/ethers/utils/base64.js +0 -6
  745. package/js/src/static_dependencies/ethers/utils/data.js +0 -6
  746. package/js/src/static_dependencies/ethers/utils/errors.js +0 -6
  747. package/js/src/static_dependencies/ethers/utils/events.js +0 -6
  748. package/js/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  749. package/js/src/static_dependencies/ethers/utils/index.js +0 -6
  750. package/js/src/static_dependencies/ethers/utils/maths.js +0 -6
  751. package/js/src/static_dependencies/ethers/utils/properties.js +0 -6
  752. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +0 -6
  753. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +0 -6
  754. package/js/src/static_dependencies/ethers/utils/rlp.js +0 -6
  755. package/js/src/static_dependencies/ethers/utils/units.js +0 -6
  756. package/js/src/static_dependencies/ethers/utils/utf8.js +0 -6
  757. package/js/src/static_dependencies/ethers/utils/uuid.js +0 -6
  758. package/js/src/static_dependencies/fflake/browser.d.ts +5 -5
  759. package/js/src/static_dependencies/fflake/browser.js +0 -6
  760. package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -6
  761. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -6
  762. package/js/src/static_dependencies/jsencrypt/index.js +0 -6
  763. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -6
  764. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  765. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  766. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  767. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +0 -6
  768. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -6
  769. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +1 -1
  770. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -6
  771. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  772. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -6
  773. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -6
  774. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  775. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -6
  776. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  777. package/js/src/static_dependencies/messagepack/msgpack.js +0 -6
  778. package/js/src/static_dependencies/noble-curves/_shortw_utils.js +0 -6
  779. package/js/src/static_dependencies/noble-curves/abstract/curve.js +0 -6
  780. package/js/src/static_dependencies/noble-curves/abstract/edwards.js +0 -6
  781. package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -6
  782. package/js/src/static_dependencies/noble-curves/abstract/modular.js +0 -6
  783. package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +0 -6
  784. package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +0 -6
  785. package/js/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  786. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.d.ts +1 -0
  787. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +0 -6
  788. package/js/src/static_dependencies/noble-curves/bn.js +0 -6
  789. package/js/src/static_dependencies/noble-curves/ed25519.js +0 -6
  790. package/js/src/static_dependencies/noble-curves/ed448.js +0 -6
  791. package/js/src/static_dependencies/noble-curves/index.js +0 -6
  792. package/js/src/static_dependencies/noble-curves/jubjub.js +0 -6
  793. package/js/src/static_dependencies/noble-curves/p256.js +0 -6
  794. package/js/src/static_dependencies/noble-curves/p384.js +0 -6
  795. package/js/src/static_dependencies/noble-curves/p521.js +0 -6
  796. package/js/src/static_dependencies/noble-curves/pasta.js +0 -6
  797. package/js/src/static_dependencies/noble-curves/secp256k1.js +0 -6
  798. package/js/src/static_dependencies/noble-hashes/_assert.js +0 -6
  799. package/js/src/static_dependencies/noble-hashes/_blake2.js +0 -6
  800. package/js/src/static_dependencies/noble-hashes/_sha2.js +0 -6
  801. package/js/src/static_dependencies/noble-hashes/_u64.js +0 -6
  802. package/js/src/static_dependencies/noble-hashes/argon2.js +0 -6
  803. package/js/src/static_dependencies/noble-hashes/blake2b.js +0 -6
  804. package/js/src/static_dependencies/noble-hashes/blake2s.js +0 -6
  805. package/js/src/static_dependencies/noble-hashes/blake3.js +0 -6
  806. package/js/src/static_dependencies/noble-hashes/crypto.js +0 -6
  807. package/js/src/static_dependencies/noble-hashes/cryptoNode.js +0 -6
  808. package/js/src/static_dependencies/noble-hashes/eskdf.js +0 -6
  809. package/js/src/static_dependencies/noble-hashes/hkdf.js +0 -6
  810. package/js/src/static_dependencies/noble-hashes/hmac.js +0 -6
  811. package/js/src/static_dependencies/noble-hashes/index.js +0 -6
  812. package/js/src/static_dependencies/noble-hashes/md5.js +0 -6
  813. package/js/src/static_dependencies/noble-hashes/pbkdf2.js +0 -6
  814. package/js/src/static_dependencies/noble-hashes/ripemd160.js +0 -6
  815. package/js/src/static_dependencies/noble-hashes/scrypt.js +0 -6
  816. package/js/src/static_dependencies/noble-hashes/sha1.js +0 -6
  817. package/js/src/static_dependencies/noble-hashes/sha256.js +0 -6
  818. package/js/src/static_dependencies/noble-hashes/sha3-addons.js +0 -6
  819. package/js/src/static_dependencies/noble-hashes/sha3.js +0 -6
  820. package/js/src/static_dependencies/noble-hashes/sha512.js +0 -6
  821. package/js/src/static_dependencies/noble-hashes/utils.js +0 -6
  822. package/js/src/static_dependencies/node-fetch/body.js +0 -6
  823. package/js/src/static_dependencies/node-fetch/errors/abort-error.js +0 -6
  824. package/js/src/static_dependencies/node-fetch/errors/base.js +0 -6
  825. package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -6
  826. package/js/src/static_dependencies/node-fetch/headers.js +0 -6
  827. package/js/src/static_dependencies/node-fetch/index.js +0 -6
  828. package/js/src/static_dependencies/node-fetch/request.js +0 -6
  829. package/js/src/static_dependencies/node-fetch/response.js +0 -6
  830. package/js/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  831. package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  832. package/js/src/static_dependencies/node-fetch/utils/is.js +0 -6
  833. package/js/src/static_dependencies/node-fetch/utils/referrer.js +0 -6
  834. package/js/src/static_dependencies/proxies/agent-base/helpers.js +0 -6
  835. package/js/src/static_dependencies/proxies/agent-base/index.js +0 -6
  836. package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -6
  837. package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -6
  838. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  839. package/js/src/static_dependencies/qs/formats.cjs +0 -6
  840. package/js/src/static_dependencies/qs/index.cjs +0 -6
  841. package/js/src/static_dependencies/qs/parse.cjs +0 -6
  842. package/js/src/static_dependencies/qs/stringify.cjs +0 -6
  843. package/js/src/static_dependencies/qs/utils.cjs +0 -6
  844. package/js/src/static_dependencies/scure-base/index.js +0 -6
  845. package/js/src/static_dependencies/scure-starknet/index.js +0 -6
  846. package/js/src/static_dependencies/starknet/constants.js +0 -6
  847. package/js/src/static_dependencies/starknet/index.js +0 -6
  848. package/js/src/static_dependencies/starknet/types/cairoEnum.js +0 -6
  849. package/js/src/static_dependencies/starknet/types/calldata.js +0 -6
  850. package/js/src/static_dependencies/starknet/types/index.js +0 -6
  851. package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  852. package/js/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  853. package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +0 -6
  854. package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +0 -6
  855. package/js/src/static_dependencies/starknet/types/lib/index.js +0 -6
  856. package/js/src/static_dependencies/starknet/types/typedData.js +0 -6
  857. package/js/src/static_dependencies/starknet/utils/address.js +0 -6
  858. package/js/src/static_dependencies/starknet/utils/assert.js +0 -6
  859. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +0 -6
  860. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +0 -6
  861. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +0 -6
  862. package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -6
  863. package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -6
  864. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  865. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  866. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  867. package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +0 -6
  868. package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -6
  869. package/js/src/static_dependencies/starknet/utils/calldata/index.js +0 -6
  870. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.d.ts +1 -1
  871. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -6
  872. package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +0 -6
  873. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -6
  874. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  875. package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -6
  876. package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -6
  877. package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -6
  878. package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +0 -6
  879. package/js/src/static_dependencies/starknet/utils/calldata/validate.js +0 -6
  880. package/js/src/static_dependencies/starknet/utils/encode.js +0 -6
  881. package/js/src/static_dependencies/starknet/utils/hash/classHash.js +0 -6
  882. package/js/src/static_dependencies/starknet/utils/hash/index.js +0 -6
  883. package/js/src/static_dependencies/starknet/utils/merkle.js +0 -6
  884. package/js/src/static_dependencies/starknet/utils/num.js +0 -6
  885. package/js/src/static_dependencies/starknet/utils/selector.js +0 -6
  886. package/js/src/static_dependencies/starknet/utils/shortString.js +0 -6
  887. package/js/src/static_dependencies/starknet/utils/starknetId.js +0 -6
  888. package/js/src/static_dependencies/starknet/utils/typedData.js +0 -6
  889. package/js/src/static_dependencies/starknet/utils/uint256.js +0 -6
  890. package/js/src/static_dependencies/starknet/utils/url.js +0 -6
  891. package/js/src/static_dependencies/watchable/src/index.js +0 -6
  892. package/js/src/static_dependencies/watchable/src/types.js +0 -6
  893. package/js/src/static_dependencies/watchable/src/unpromise.js +0 -6
  894. package/js/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  895. package/js/src/timex.js +0 -6
  896. package/js/src/tokocrypto.js +0 -6
  897. package/js/src/tradeogre.js +0 -6
  898. package/js/src/upbit.js +0 -6
  899. package/js/src/vertex.js +0 -6
  900. package/js/src/wavesexchange.js +0 -6
  901. package/js/src/whitebit.js +0 -6
  902. package/js/src/woo.js +0 -6
  903. package/js/src/woofipro.js +0 -6
  904. package/js/src/xt.js +0 -6
  905. package/js/src/yobit.js +0 -6
  906. package/js/src/zaif.js +0 -6
  907. package/js/src/zonda.js +0 -6
  908. package/package.json +4 -7
  909. package/examples/README.md +0 -316
  910. package/examples/js/README.md +0 -15
  911. package/examples/js/cli.js +0 -559
@@ -1,559 +0,0 @@
1
- #! /usr/bin/env node
2
- import fs from 'fs'
3
- import path from 'path'
4
- import ansi from 'ansicolor'
5
- import asTable from 'as-table'
6
- import ololog from 'ololog'
7
- import ccxt from '../../js/ccxt.js'
8
- import { Agent } from 'https'
9
- import { add_static_result } from '../../utils/update-static-tests-data.js'
10
- const fsPromises = fs.promises;
11
- ansi.nice
12
- const log = ololog.configure ({ locate: false }).unlimited
13
- const { ExchangeError , NetworkError} = ccxt
14
-
15
- function jsonStringify (obj, indent = undefined) {
16
- return JSON.stringify (obj, function(k, v) { return v === undefined ? null : v; }, indent);
17
- }
18
-
19
-
20
- function countAllParams(fn) {
21
- const fnStr = fn.toString()
22
- .replace(/\/\/.*$/mg, '')
23
- .replace(/\/\*[\s\S]*?\*\//mg, '')
24
- .replace(/\s+/g, '');
25
-
26
- const match = fnStr.match(/^[^(]*\(([^)]*)\)/);
27
- if (!match) return 0;
28
-
29
- const params = match[1].split(',').filter(p => p);
30
- return params.length;
31
- }
32
-
33
- //-----------------------------------------------------------------------------
34
-
35
- let [processPath, , exchangeId, methodName, ... params] = process.argv.filter (x => !x.startsWith ('--'))
36
- , verbose = process.argv.includes ('--verbose')
37
- , debug = process.argv.includes ('--debug')
38
- , poll = process.argv.includes ('--poll')
39
- , no_send = process.argv.includes ('--no-send')
40
- , no_load_markets = process.argv.includes ('--no-load-markets')
41
- , details = process.argv.includes ('--details')
42
- , no_table = process.argv.includes ('--no-table')
43
- , table = process.argv.includes ('--table')
44
- , iso8601 = process.argv.includes ('--iso8601')
45
- , cors = process.argv.includes ('--cors')
46
- , cache_markets = process.argv.includes ('--cache-markets')
47
- , testnet =
48
- process.argv.includes ('--test') ||
49
- process.argv.includes ('--testnet') ||
50
- process.argv.includes ('--sandbox')
51
- , signIn = process.argv.includes ('--sign-in') || process.argv.includes ('--signIn')
52
- , isSpot = process.argv.includes ('--spot')
53
- , isSwap = process.argv.includes ('--swap')
54
- , isFuture = process.argv.includes ('--future')
55
- , isOption = process.argv.includes ('--option')
56
- , shouldCreateRequestReport = process.argv.includes ('--report') || process.argv.includes ('--request')
57
- , shouldCreateResponseReport = process.argv.includes ('--response')
58
- , shouldCreateBoth = process.argv.includes ('--static')
59
- , raw = process.argv.includes ('--raw')
60
- , noKeys = process.argv.includes ('--no-keys')
61
-
62
- let foundDescription = undefined;
63
- const nameIndex = process.argv.indexOf ('--name')
64
- if (nameIndex >= 0) {
65
- foundDescription = process.argv[nameIndex + 1];
66
- // search that string in `params` and remove it
67
- const index = params.indexOf (foundDescription)
68
- if (index >= 0) {
69
- params.splice (index, 1);
70
- }
71
- }
72
-
73
- let lastParamObject
74
- let symbol
75
- for (let i = 0; i < process.argv.length; i++) {
76
- if (process.argv[i] === '--param') {
77
- const nextParam = process.argv[i + 1]
78
- if (nextParam) {
79
- const paramIndex = params.indexOf (nextParam)
80
- if (paramIndex >= 0) {
81
- if (nextParam.indexOf('=') >= 0) {
82
- const parsed = nextParam.split('=')
83
- if (parsed.length === 2) {
84
- if (!lastParamObject) {
85
- lastParamObject = {}
86
- }
87
- const key = parsed[0];
88
- const value = parsed[1];
89
- if (key === 'symbol') {
90
- symbol = value
91
- }
92
- lastParamObject[key] = value
93
- params.splice(paramIndex, 1)
94
- } else {
95
- throw new Error ('Invalid usage of --param. Please provide a key=value pair after --param.')
96
- }
97
- } else {
98
- if (!lastParamObject) {
99
- lastParamObject = {}
100
- }
101
- lastParamObject[nextParam] = true
102
- }
103
- } else {
104
- throw new Error (`Unexpected error by parsing parameters: ${nextParam} is not found in params array.`)
105
- }
106
- } else {
107
- throw new Error ('Invalid usage of --param. Please provide a value after --param.')
108
- }
109
- }
110
- }
111
-
112
- let lastParam = params[params.length - 1]
113
- // exclude parasitic single quotes. Can happen on some shell processors
114
- if (lastParam?.includes('{') && lastParam?.includes('}')) {
115
- if (lastParam.startsWith('\'{') && lastParam.endsWith('}\'')) {
116
- lastParam = params[params.length - 1] = lastParam.substring(1, lastParam.length - 1)
117
- }
118
- }
119
-
120
- //-----------------------------------------------------------------------------
121
- if (!raw) {
122
- log ((new Date ()).toISOString())
123
- log ('Node.js:', process.version)
124
- log ('CCXT v' + ccxt.version)
125
- }
126
-
127
- //-----------------------------------------------------------------------------
128
-
129
- process.on ('uncaughtException', e => { log.bright.red.error (e); log.red.error (e.message); process.exit (1) })
130
- process.on ('unhandledRejection', e => { log.bright.red.error (e); log.red.error (e.message); process.exit (1) })
131
-
132
- //-----------------------------------------------------------------------------
133
-
134
- // set up keys and settings, if any
135
- const keysGlobal = path.resolve ('keys.json')
136
- const keysLocal = path.resolve ('keys.local.json')
137
-
138
- const keysFile = fs.existsSync (keysLocal) ? keysLocal : keysGlobal
139
- const settingsFile = fs.readFileSync(keysFile);
140
- // eslint-disable-next-line import/no-dynamic-require, no-path-concat
141
- let settings = JSON.parse(settingsFile)
142
- settings = settings[exchangeId] || {}
143
-
144
-
145
- //-----------------------------------------------------------------------------
146
-
147
- const timeout = 30000
148
- let exchange = undefined
149
-
150
-
151
-
152
- const httpsAgent = new Agent ({
153
- ecdhCurve: 'auto',
154
- keepAlive: true,
155
- })
156
-
157
-
158
- // check here if we have a arg like this: binance.fetchOrders()
159
- const callRegex = /\s*(\w+)\s*\.\s*(\w+)\s*\(([^()]*)\)/
160
- if (callRegex.test (exchangeId)) {
161
- const res = callRegex.exec (exchangeId);
162
- exchangeId = res[1];
163
- methodName = res[2];
164
- params = res[3].split(",").map(x => x.trim());
165
- }
166
-
167
- try {
168
- if (ccxt.pro.exchanges.includes(exchangeId)) {
169
- exchange = new (ccxt.pro)[exchangeId] ({ timeout, httpsAgent, ... settings })
170
- } else {
171
- exchange = new (ccxt)[exchangeId] ({ timeout, httpsAgent, ... settings })
172
- }
173
-
174
- if (exchange === undefined) {
175
- process.exit ()
176
- }
177
-
178
- if (isSpot) {
179
- exchange.options['defaultType'] = 'spot';
180
- } else if (isSwap) {
181
- exchange.options['defaultType'] = 'swap';
182
- } else if (isFuture) {
183
- exchange.options['defaultType'] = 'future';
184
- } else if (isOption) {
185
- exchange.options['defaultType'] = 'option';
186
- }
187
-
188
- if (!noKeys) {
189
- // check auth keys in env var
190
- const requiredCredentials = exchange.requiredCredentials;
191
- for (const [credential, isRequired] of Object.entries (requiredCredentials)) {
192
- if (isRequired && exchange[credential] === undefined) {
193
- const credentialEnvName = (exchangeId + '_' + credential).toUpperCase () // example: KRAKEN_APIKEY
194
- let credentialValue = process.env[credentialEnvName]
195
- if (credentialValue) {
196
- if (credentialValue.indexOf('---BEGIN') > -1) {
197
- credentialValue = credentialValue.replaceAll('\\n', '\n');
198
- }
199
- exchange[credential] = credentialValue
200
- }
201
- }
202
- }
203
- }
204
-
205
- if (testnet) {
206
- exchange.setSandboxMode (true)
207
- }
208
-
209
- } catch (e) {
210
-
211
- log.red (e)
212
- printUsage ()
213
- process.exit ()
214
- }
215
-
216
- //-----------------------------------------------------------------------------
217
-
218
- function createRequestTemplate(exchange, methodName, args, result) {
219
- const final = {
220
- 'description': 'Fill this with a description of the method call',
221
- 'method': methodName,
222
- 'url': exchange.last_request_url ?? '',
223
- 'input': args,
224
- 'output': exchange.last_request_body ?? undefined
225
- }
226
- log('Report: (paste inside static/request/' + exchange.id + '.json ->' + methodName + ')')
227
- log.green('-------------------------------------------')
228
- log (JSON.stringify (final, null, 2))
229
- log.green('-------------------------------------------')
230
-
231
- if (foundDescription !== undefined) {
232
- final.description = foundDescription;
233
- log.green('auto-saving static result');
234
- add_static_result('request', exchange.id, methodName, final);
235
- }
236
- }
237
-
238
- //-----------------------------------------------------------------------------
239
-
240
- function createResponseTemplate(exchange, methodName, args, result) {
241
- const final = {
242
- 'description': 'Fill this with a description of the method call',
243
- 'method': methodName,
244
- 'input': args,
245
- 'httpResponse': exchange.last_json_response ?? exchange.last_http_response,
246
- 'parsedResponse': result
247
- }
248
- log('Report: (paste inside static/response/' + exchange.id + '.json ->' + methodName + ')')
249
- log.green('-------------------------------------------')
250
- log (jsonStringify (final, 2))
251
- log.green('-------------------------------------------')
252
-
253
- if (foundDescription !== undefined) {
254
- final.description = foundDescription;
255
- log.green('auto-saving static result');
256
- add_static_result('response', exchange.id, methodName, final);
257
- }
258
- }
259
-
260
- //-----------------------------------------------------------------------------
261
-
262
- function printSupportedExchanges () {
263
- log ('Supported exchanges:', ccxt.exchanges.join (', ').green)
264
- }
265
-
266
- //-----------------------------------------------------------------------------
267
-
268
- function printUsage () {
269
- log ('This is an example of a basic command-line interface to all exchanges')
270
- log ('Usage: node', process.argv[1], 'id'.green, 'method'.yellow, '"param1" param2 "param3" param4 ...'.blue)
271
- log ('Examples:')
272
- log ('node', process.argv[1], 'okcoin fetchOHLCV BTC/USD 15m')
273
- log ('node', process.argv[1], 'bitfinex fetchBalance')
274
- log ('node', process.argv[1], 'kraken fetchOrderBook ETH/BTC')
275
- log ('node', process.argv[1], 'binanceusdm fetchTrades BTC/USDC undefined undefined --param until=1746988377067')
276
- printSupportedExchanges ()
277
- log ('Supported options:')
278
- log ('--verbose Print verbose output')
279
- log ('--debug Print debugging output')
280
- log ('--poll Repeat continuously in rate-limited mode')
281
- log ('--no-send Print the request but do not actually send it to the exchange (sets verbose and load-markets)')
282
- log ('--no-load-markets Do not pre-load markets (for debugging)')
283
- log ('--details Print detailed fetch responses')
284
- log ('--no-table Do not print the fetch response as a table')
285
- log ('--table Print the fetch response as a table')
286
- log ('--iso8601 Print timestamps as ISO8601 datetimes')
287
- log ('--param key=value Set a custom key=value pair for the last method\'s argument. Can be repeated multiple times')
288
- log (' NOTE: don\'t forget to fill up missed arguments with "undefined" before last options parameter')
289
- log ('--cors use CORS proxy for debugging')
290
- log ('--sign-in Call signIn() if any')
291
- log ('--sandbox Use the exchange sandbox if available, same as --testnet')
292
- log ('--testnet Use the exchange testnet if available, same as --sandbox')
293
- log ('--test Use the exchange testnet if available, same as --sandbox')
294
- log ('--cache-markets Cache the loaded markets in the .cache folder in the current directory')
295
- }
296
-
297
- //-----------------------------------------------------------------------------
298
-
299
- const printHumanReadable = (exchange, result) => {
300
- if (raw) {
301
- return log (jsonStringify (result))
302
- }
303
- if (!no_table && Array.isArray (result) || table) {
304
- result = Object.values (result)
305
- let arrayOfObjects = (typeof result[0] === 'object')
306
-
307
- if (details)
308
- result.forEach (object => {
309
- if (arrayOfObjects)
310
- log ('-------------------------------------------')
311
- log (object)
312
- })
313
-
314
- if (arrayOfObjects || table && Array.isArray (result)) {
315
- const configuredAsTable = asTable.configure ({
316
- delimiter: ' | '.lightGray.dim,
317
- right: true,
318
- title: x => String (x).lightGray,
319
- dash: '-'.lightGray.dim,
320
- print: x => {
321
- if (typeof x === 'object') {
322
- const j = jsonStringify (x).trim ()
323
- if (j.length < 100) return j
324
- }
325
- return String (x)
326
- }
327
- })
328
- log (result.length > 0 ? configuredAsTable (result.map (rawElement => {
329
- const element = Object.assign ({}, rawElement)
330
- let keys = Object.keys (element)
331
- delete element['info']
332
- keys.forEach (key => {
333
- if (!iso8601)
334
- return element[key]
335
- try {
336
- const iso8601 = exchange.iso8601 (element[key])
337
- if (iso8601.match (/^20[0-9]{2}[-]?/))
338
- element[key] = iso8601
339
- else
340
- throw new Error ('wrong date')
341
- } catch (e) {
342
- return element[key]
343
- }
344
- })
345
- return element
346
- })) : result)
347
- log (result.length, 'objects');
348
- } else {
349
- console.dir (result, { depth: null })
350
- log (result.length, 'objects');
351
- }
352
- } else {
353
- console.dir (result, { depth: null, maxArrayLength: null })
354
- }
355
- }
356
-
357
- //-----------------------------------------------------------------------------
358
-
359
- async function run () {
360
-
361
-
362
-
363
- if (!exchangeId) {
364
-
365
- printUsage ()
366
-
367
- } else {
368
-
369
- let args = params
370
- .map (s => s.match (/^[0-9]{4}[-][0-9]{2}[-][0-9]{2}[T\s]?[0-9]{2}[:][0-9]{2}[:][0-9]{2}/g) ? exchange.parse8601 (s) : s)
371
- .map (s => {
372
- return (() => {
373
- if (s.match(/^\d+$/g)) return s < Number.MAX_SAFE_INTEGER ? Number(s) : s
374
- try {
375
- return eval('(() => (' + s + ')) ()')
376
- } catch (e) {
377
- return s
378
- }
379
- })();
380
- })
381
-
382
- const www = Array.isArray (exchange.urls.www) ? exchange.urls.www[0] : exchange.urls.www
383
-
384
- if (cors) {
385
- exchange.proxy = 'https://cors-anywhere.herokuapp.com/';
386
- exchange.origin = exchange.uuid ()
387
- }
388
-
389
- no_load_markets = no_send ? true : no_load_markets
390
-
391
- if (debug) {
392
- exchange.verbose = verbose
393
- }
394
-
395
- const path = '.cache/' + exchangeId + '-markets.json'
396
-
397
- if (!no_load_markets) {
398
- try {
399
- await fsPromises.access (path, fs.constants.R_OK)
400
- exchange.markets = JSON.parse (await fsPromises.readFile (path))
401
- } catch {
402
- await exchange.loadMarkets ()
403
- if (cache_markets) {
404
- await fsPromises.writeFile (path, jsonStringify (exchange.markets))
405
- }
406
- }
407
- }
408
- if (symbol && lastParamObject) {
409
- let marketId
410
- try {
411
- marketId = exchange.marketId(symbol)
412
- } catch (e) {
413
- // noop possible loaded from cache
414
- }
415
- if (!marketId) {
416
- try {
417
- await exchange.loadMarkets();
418
- marketId = exchange.marketId(symbol)
419
- } catch (e) {
420
- // noop
421
- }
422
- }
423
- if (marketId) {
424
- lastParamObject.symbol = marketId
425
- }
426
- }
427
-
428
- if (typeof lastParamObject === 'object') {
429
- const lastArgument = args[args.length - 1];
430
- if (lastParam && typeof lastArgument === 'object') {
431
- args[args.length - 1] = Object.assign (lastArgument, lastParamObject)
432
- } else {
433
- args.push (lastParamObject)
434
- }
435
- }
436
-
437
- if (signIn && exchange.has.signIn) {
438
- await exchange.signIn ()
439
- }
440
-
441
- exchange.verbose = verbose
442
-
443
- if (no_send) {
444
-
445
- exchange.verbose = no_send
446
- exchange.fetch = function fetch (url, method = 'GET', headers = undefined, body = undefined) {
447
- log.dim.noLocate ('-------------------------------------------')
448
- log.dim.noLocate (exchange.iso8601 (exchange.milliseconds ()))
449
- log.green.unlimited ({
450
- url,
451
- method,
452
- headers,
453
- body,
454
- })
455
- }
456
- }
457
-
458
- if (methodName) {
459
-
460
- if (typeof exchange[methodName] === 'function') {
461
-
462
- if (!raw || details) {
463
- const methodArgsPrint = JSON.stringify(args);
464
- log(exchange.id + '.' + methodName, '(' + methodArgsPrint.substring(1, methodArgsPrint.length - 1) + ')')
465
- }
466
-
467
- let start = exchange.milliseconds ()
468
- let end = exchange.milliseconds ()
469
-
470
- let i = 0;
471
-
472
- let isWsMethod = false
473
- if (methodName.startsWith("watch")) { // handle WS methods
474
- isWsMethod = true;
475
- }
476
-
477
- while (true) {
478
- try {
479
- const fn = exchange[methodName]
480
- const fnParams = countAllParams(fn)
481
- const argsContainsParams = args.find( arg=> arg && typeof arg === 'object' && !Array.isArray(arg) && Object.keys(arg).length > 0)
482
- if (argsContainsParams && fnParams !== args.length) {
483
- // populate the missing params with undefined
484
- const missingParams = fnParams - args.length
485
- const paramsObj = args[args.length - 1]
486
- args.pop()
487
- const newArgsArray = args;
488
- for (let i = 0; i < missingParams; i++) {
489
- newArgsArray.push(undefined)
490
- }
491
- newArgsArray.push(paramsObj)
492
- args = newArgsArray
493
- }
494
- const result = await exchange[methodName] (... args)
495
- end = exchange.milliseconds ()
496
- if (!isWsMethod && !raw) {
497
- log (exchange.iso8601 (end), 'iteration', i++, 'passed in', end - start, 'ms\n')
498
- }
499
- printHumanReadable (exchange, result)
500
- if (!isWsMethod && !raw) {
501
- log (exchange.iso8601 (end), 'iteration', i, 'passed in', end - start, 'ms\n')
502
- }
503
- if (shouldCreateRequestReport || shouldCreateBoth) {
504
- createRequestTemplate(exchange, methodName, args, result)
505
- }
506
- if (shouldCreateResponseReport || shouldCreateBoth) {
507
- createResponseTemplate(exchange, methodName, args, result)
508
- }
509
- start = end
510
- } catch (e) {
511
- if (e instanceof ExchangeError) {
512
- log.red (e.constructor.name, e.message)
513
- } else if (e instanceof NetworkError) {
514
- log.yellow (e.constructor.name, e.message)
515
- }
516
-
517
- log.dim ('---------------------------------------------------')
518
-
519
- // rethrow for call-stack // other errors
520
- throw e
521
-
522
- }
523
-
524
- if (debug) {
525
- if (httpsAgent.freeSockets) {
526
- const keys = Object.keys (httpsAgent.freeSockets)
527
- if (keys.length) {
528
- const firstKey = keys[0]
529
- let httpAgent = httpsAgent.freeSockets[firstKey];
530
- log (firstKey, httpAgent.length)
531
- }
532
- }
533
- }
534
-
535
- if (!poll && !isWsMethod){
536
- break
537
- }
538
- }
539
-
540
- exchange.close()
541
-
542
- } else if (exchange[methodName] === undefined) {
543
- log.red (exchange.id + '.' + methodName + ': no such property')
544
- } else {
545
- printHumanReadable (exchange, exchange[methodName])
546
- }
547
- } else {
548
- log (exchange)
549
- }
550
- }
551
-
552
- }
553
-
554
- //-----------------------------------------------------------------------------
555
-
556
- run ()
557
-
558
- export {
559
- }