ccxt 4.5.6 → 4.5.8
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.
- package/README.md +4 -4
- package/dist/ccxt.browser.min.js +3 -3
- package/dist/cjs/ccxt.js +2 -7
- package/dist/cjs/src/abstract/alpaca.js +1 -1
- package/dist/cjs/src/abstract/apex.js +1 -1
- package/dist/cjs/src/abstract/ascendex.js +1 -1
- package/dist/cjs/src/abstract/backpack.js +1 -1
- package/dist/cjs/src/abstract/bigone.js +1 -1
- package/dist/cjs/src/abstract/binance.js +1 -1
- package/dist/cjs/src/abstract/bingx.js +1 -1
- package/dist/cjs/src/abstract/bit2c.js +1 -1
- package/dist/cjs/src/abstract/bitbank.js +1 -1
- package/dist/cjs/src/abstract/bitbns.js +1 -1
- package/dist/cjs/src/abstract/bitfinex.js +1 -1
- package/dist/cjs/src/abstract/bitflyer.js +1 -1
- package/dist/cjs/src/abstract/bitget.js +1 -1
- package/dist/cjs/src/abstract/bithumb.js +1 -1
- package/dist/cjs/src/abstract/bitmart.js +1 -1
- package/dist/cjs/src/abstract/bitmex.js +1 -1
- package/dist/cjs/src/abstract/bitopro.js +1 -1
- package/dist/cjs/src/abstract/bitrue.js +1 -1
- package/dist/cjs/src/abstract/bitso.js +1 -1
- package/dist/cjs/src/abstract/bitstamp.js +1 -1
- package/dist/cjs/src/abstract/bitteam.js +1 -1
- package/dist/cjs/src/abstract/bittrade.js +1 -1
- package/dist/cjs/src/abstract/bitvavo.js +1 -1
- package/dist/cjs/src/abstract/blockchaincom.js +1 -1
- package/dist/cjs/src/abstract/blofin.js +1 -1
- package/dist/cjs/src/abstract/btcalpha.js +1 -1
- package/dist/cjs/src/abstract/btcbox.js +1 -1
- package/dist/cjs/src/abstract/btcmarkets.js +1 -1
- package/dist/cjs/src/abstract/btcturk.js +1 -1
- package/dist/cjs/src/abstract/bybit.js +1 -1
- package/dist/cjs/src/abstract/cex.js +1 -1
- package/dist/cjs/src/abstract/coinbase.js +1 -1
- package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
- package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
- package/dist/cjs/src/abstract/coincatch.js +1 -1
- package/dist/cjs/src/abstract/coincheck.js +1 -1
- package/dist/cjs/src/abstract/coinex.js +1 -1
- package/dist/cjs/src/abstract/coinmate.js +1 -1
- package/dist/cjs/src/abstract/coinmetro.js +1 -1
- package/dist/cjs/src/abstract/coinone.js +1 -1
- package/dist/cjs/src/abstract/coinsph.js +1 -1
- package/dist/cjs/src/abstract/coinspot.js +1 -1
- package/dist/cjs/src/abstract/cryptocom.js +1 -1
- package/dist/cjs/src/abstract/cryptomus.js +1 -1
- package/dist/cjs/src/abstract/defx.js +1 -1
- package/dist/cjs/src/abstract/delta.js +1 -1
- package/dist/cjs/src/abstract/deribit.js +1 -1
- package/dist/cjs/src/abstract/derive.js +1 -1
- package/dist/cjs/src/abstract/digifinex.js +1 -1
- package/dist/cjs/src/abstract/exmo.js +1 -1
- package/dist/cjs/src/abstract/foxbit.js +1 -1
- package/dist/cjs/src/abstract/gate.js +1 -1
- package/dist/cjs/src/abstract/gemini.js +1 -1
- package/dist/cjs/src/abstract/hashkey.js +1 -1
- package/dist/cjs/src/abstract/hibachi.js +1 -1
- package/dist/cjs/src/abstract/hitbtc.js +1 -1
- package/dist/cjs/src/abstract/hollaex.js +1 -1
- package/dist/cjs/src/abstract/htx.js +1 -1
- package/dist/cjs/src/abstract/hyperliquid.js +1 -1
- package/dist/cjs/src/abstract/independentreserve.js +1 -1
- package/dist/cjs/src/abstract/indodax.js +1 -1
- package/dist/cjs/src/abstract/kraken.js +1 -1
- package/dist/cjs/src/abstract/krakenfutures.js +1 -1
- package/dist/cjs/src/abstract/kucoin.js +1 -1
- package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
- package/dist/cjs/src/abstract/latoken.js +1 -1
- package/dist/cjs/src/abstract/lbank.js +1 -1
- package/dist/cjs/src/abstract/luno.js +1 -1
- package/dist/cjs/src/abstract/mercado.js +1 -1
- package/dist/cjs/src/abstract/mexc.js +1 -1
- package/dist/cjs/src/abstract/modetrade.js +1 -1
- package/dist/cjs/src/abstract/ndax.js +1 -1
- package/dist/cjs/src/abstract/novadax.js +1 -1
- package/dist/cjs/src/abstract/oceanex.js +1 -1
- package/dist/cjs/src/abstract/okcoin.js +1 -1
- package/dist/cjs/src/abstract/okx.js +1 -1
- package/dist/cjs/src/abstract/onetrading.js +1 -1
- package/dist/cjs/src/abstract/oxfun.js +1 -1
- package/dist/cjs/src/abstract/p2b.js +1 -1
- package/dist/cjs/src/abstract/paradex.js +1 -1
- package/dist/cjs/src/abstract/paymium.js +1 -1
- package/dist/cjs/src/abstract/phemex.js +1 -1
- package/dist/cjs/src/abstract/poloniex.js +1 -1
- package/dist/cjs/src/abstract/probit.js +1 -1
- package/dist/cjs/src/abstract/timex.js +1 -1
- package/dist/cjs/src/abstract/tokocrypto.js +1 -1
- package/dist/cjs/src/abstract/toobit.js +1 -1
- package/dist/cjs/src/abstract/upbit.js +1 -1
- package/dist/cjs/src/abstract/wavesexchange.js +1 -1
- package/dist/cjs/src/abstract/whitebit.js +1 -1
- package/dist/cjs/src/abstract/woo.js +1 -1
- package/dist/cjs/src/abstract/woofipro.js +1 -1
- package/dist/cjs/src/abstract/xt.js +1 -1
- package/dist/cjs/src/abstract/yobit.js +1 -1
- package/dist/cjs/src/abstract/zaif.js +1 -1
- package/dist/cjs/src/abstract/zonda.js +1 -1
- package/dist/cjs/src/alpaca.js +1 -1
- package/dist/cjs/src/apex.js +3 -3
- package/dist/cjs/src/ascendex.js +1 -1
- package/dist/cjs/src/backpack.js +22 -4
- package/dist/cjs/src/base/Exchange.js +33 -11
- package/dist/cjs/src/base/Precise.js +6 -0
- package/dist/cjs/src/base/errors.js +6 -0
- package/dist/cjs/src/base/functions/crypto.js +1 -1
- package/dist/cjs/src/base/functions/encode.js +2 -2
- package/dist/cjs/src/base/functions/misc.js +1 -0
- package/dist/cjs/src/base/functions/number.js +6 -0
- package/dist/cjs/src/base/functions/platform.js +6 -0
- package/dist/cjs/src/base/functions/rsa.js +1 -0
- package/dist/cjs/src/base/functions/string.js +6 -0
- package/dist/cjs/src/base/functions/throttle.js +1 -1
- package/dist/cjs/src/base/functions/time.js +6 -0
- package/dist/cjs/src/base/functions/totp.js +1 -0
- package/dist/cjs/src/base/functions/type.js +6 -0
- package/dist/cjs/src/base/functions.js +1 -1
- package/dist/cjs/src/base/ws/Cache.js +6 -0
- package/dist/cjs/src/base/ws/Client.js +1 -0
- package/dist/cjs/src/base/ws/Future.js +1 -1
- package/dist/cjs/src/base/ws/OrderBook.js +1 -1
- package/dist/cjs/src/base/ws/OrderBookSide.js +6 -0
- package/dist/cjs/src/base/ws/WsClient.js +1 -1
- package/dist/cjs/src/bequant.js +1 -1
- package/dist/cjs/src/bigone.js +1 -1
- package/dist/cjs/src/binance.js +13 -9
- package/dist/cjs/src/binancecoinm.js +1 -1
- package/dist/cjs/src/binanceus.js +1 -1
- package/dist/cjs/src/binanceusdm.js +1 -1
- package/dist/cjs/src/bingx.js +1 -1
- package/dist/cjs/src/bit2c.js +1 -1
- package/dist/cjs/src/bitbank.js +2 -1
- package/dist/cjs/src/bitbns.js +2 -1
- package/dist/cjs/src/bitfinex.js +1 -1
- package/dist/cjs/src/bitflyer.js +2 -1
- package/dist/cjs/src/bitget.js +1 -1
- package/dist/cjs/src/bithumb.js +10 -1
- package/dist/cjs/src/bitmart.js +1 -1
- package/dist/cjs/src/bitmex.js +1 -1
- package/dist/cjs/src/bitopro.js +1 -1
- package/dist/cjs/src/bitrue.js +1 -1
- package/dist/cjs/src/bitso.js +2 -1
- package/dist/cjs/src/bitstamp.js +1 -1
- package/dist/cjs/src/bitteam.js +1 -1
- package/dist/cjs/src/bittrade.js +1 -1
- package/dist/cjs/src/bitvavo.js +43 -42
- package/dist/cjs/src/blockchaincom.js +2 -1
- package/dist/cjs/src/blofin.js +1 -1
- package/dist/cjs/src/btcalpha.js +2 -1
- package/dist/cjs/src/btcbox.js +2 -1
- package/dist/cjs/src/btcmarkets.js +2 -1
- package/dist/cjs/src/btcturk.js +2 -1
- package/dist/cjs/src/bybit.js +1 -1
- package/dist/cjs/src/cex.js +1 -1
- package/dist/cjs/src/coinbase.js +1 -1
- package/dist/cjs/src/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/coincatch.js +1 -1
- package/dist/cjs/src/coincheck.js +1 -1
- package/dist/cjs/src/coinex.js +1 -1
- package/dist/cjs/src/coinmate.js +1 -1
- package/dist/cjs/src/coinmetro.js +1 -1
- package/dist/cjs/src/coinone.js +1 -1
- package/dist/cjs/src/coinsph.js +1 -0
- package/dist/cjs/src/coinspot.js +1 -1
- package/dist/cjs/src/cryptocom.js +1 -1
- package/dist/cjs/src/cryptomus.js +1 -1
- package/dist/cjs/src/defx.js +1 -1
- package/dist/cjs/src/delta.js +1 -1
- package/dist/cjs/src/deribit.js +4 -3
- package/dist/cjs/src/derive.js +1 -1
- package/dist/cjs/src/digifinex.js +2 -2
- package/dist/cjs/src/exmo.js +1 -1
- package/dist/cjs/src/fmfwio.js +1 -1
- package/dist/cjs/src/foxbit.js +1 -1
- package/dist/cjs/src/gate.js +9 -13
- package/dist/cjs/src/gateio.js +1 -1
- package/dist/cjs/src/gemini.js +4 -4
- package/dist/cjs/src/hashkey.js +1 -1
- package/dist/cjs/src/hibachi.js +4 -11
- package/dist/cjs/src/hitbtc.js +1 -0
- package/dist/cjs/src/hollaex.js +1 -1
- package/dist/cjs/src/htx.js +12 -2
- package/dist/cjs/src/huobi.js +1 -1
- package/dist/cjs/src/hyperliquid.js +39 -3
- package/dist/cjs/src/independentreserve.js +2 -1
- package/dist/cjs/src/indodax.js +18 -7
- package/dist/cjs/src/kraken.js +26 -7
- package/dist/cjs/src/krakenfutures.js +2 -1
- package/dist/cjs/src/kucoin.js +1 -1
- package/dist/cjs/src/kucoinfutures.js +1 -1
- package/dist/cjs/src/latoken.js +1 -1
- package/dist/cjs/src/lbank.js +5 -2
- package/dist/cjs/src/luno.js +1 -1
- package/dist/cjs/src/mercado.js +2 -1
- package/dist/cjs/src/mexc.js +81 -37
- package/dist/cjs/src/modetrade.js +1 -1
- package/dist/cjs/src/myokx.js +1 -1
- package/dist/cjs/src/ndax.js +1 -1
- package/dist/cjs/src/novadax.js +2 -1
- package/dist/cjs/src/oceanex.js +2 -1
- package/dist/cjs/src/okcoin.js +1 -1
- package/dist/cjs/src/okx.js +20 -7
- package/dist/cjs/src/okxus.js +1 -1
- package/dist/cjs/src/onetrading.js +1 -1
- package/dist/cjs/src/oxfun.js +14 -4
- package/dist/cjs/src/p2b.js +1 -1
- package/dist/cjs/src/paradex.js +1 -1
- package/dist/cjs/src/paymium.js +1 -1
- package/dist/cjs/src/poloniex.js +1 -1
- package/dist/cjs/src/pro/alpaca.js +1 -1
- package/dist/cjs/src/pro/apex.js +8 -5
- package/dist/cjs/src/pro/ascendex.js +1 -1
- package/dist/cjs/src/pro/backpack.js +9 -7
- package/dist/cjs/src/pro/bequant.js +1 -1
- package/dist/cjs/src/pro/binancecoinm.js +1 -1
- package/dist/cjs/src/pro/binanceus.js +1 -1
- package/dist/cjs/src/pro/binanceusdm.js +1 -1
- package/dist/cjs/src/pro/bingx.js +207 -221
- package/dist/cjs/src/pro/bitfinex.js +1 -1
- package/dist/cjs/src/pro/bitget.js +1 -1
- package/dist/cjs/src/pro/bithumb.js +1 -1
- package/dist/cjs/src/pro/bitmart.js +1 -1
- package/dist/cjs/src/pro/bitmex.js +1 -1
- package/dist/cjs/src/pro/bitrue.js +1 -1
- package/dist/cjs/src/pro/bitstamp.js +1 -1
- package/dist/cjs/src/pro/bitvavo.js +1 -1
- package/dist/cjs/src/pro/blockchaincom.js +1 -1
- package/dist/cjs/src/pro/blofin.js +1 -1
- package/dist/cjs/src/pro/bybit.js +1 -1
- package/dist/cjs/src/pro/cex.js +1 -1
- package/dist/cjs/src/pro/coinbase.js +1 -1
- package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
- package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
- package/dist/cjs/src/pro/coincatch.js +1 -1
- package/dist/cjs/src/pro/coincheck.js +1 -1
- package/dist/cjs/src/pro/coinex.js +7 -6
- package/dist/cjs/src/pro/coinone.js +1 -1
- package/dist/cjs/src/pro/cryptocom.js +1 -1
- package/dist/cjs/src/pro/defx.js +1 -1
- package/dist/cjs/src/pro/deribit.js +1 -1
- package/dist/cjs/src/pro/exmo.js +1 -1
- package/dist/cjs/src/pro/gate.js +1 -1
- package/dist/cjs/src/pro/gateio.js +1 -1
- package/dist/cjs/src/pro/gemini.js +1 -1
- package/dist/cjs/src/pro/hashkey.js +1 -1
- package/dist/cjs/src/pro/hitbtc.js +1 -1
- package/dist/cjs/src/pro/hollaex.js +1 -1
- package/dist/cjs/src/pro/htx.js +153 -10
- package/dist/cjs/src/pro/huobi.js +1 -1
- package/dist/cjs/src/pro/hyperliquid.js +1 -1
- package/dist/cjs/src/pro/independentreserve.js +1 -1
- package/dist/cjs/src/pro/kraken.js +1 -1
- package/dist/cjs/src/pro/krakenfutures.js +1 -1
- package/dist/cjs/src/pro/kucoin.js +1 -1
- package/dist/cjs/src/pro/kucoinfutures.js +1 -1
- package/dist/cjs/src/pro/lbank.js +1 -0
- package/dist/cjs/src/pro/luno.js +1 -1
- package/dist/cjs/src/pro/mexc.js +1 -1
- package/dist/cjs/src/pro/myokx.js +1 -1
- package/dist/cjs/src/pro/ndax.js +1 -1
- package/dist/cjs/src/pro/okcoin.js +1 -1
- package/dist/cjs/src/pro/okx.js +1 -1
- package/dist/cjs/src/pro/okxus.js +1 -1
- package/dist/cjs/src/pro/onetrading.js +1 -1
- package/dist/cjs/src/pro/oxfun.js +1 -1
- package/dist/cjs/src/pro/p2b.js +1 -1
- package/dist/cjs/src/pro/paradex.js +1 -1
- package/dist/cjs/src/pro/phemex.js +9 -7
- package/dist/cjs/src/pro/poloniex.js +1 -1
- package/dist/cjs/src/pro/probit.js +1 -1
- package/dist/cjs/src/pro/toobit.js +1 -1
- package/dist/cjs/src/pro/upbit.js +1 -1
- package/dist/cjs/src/pro/whitebit.js +1 -1
- package/dist/cjs/src/pro/woo.js +167 -5
- package/dist/cjs/src/pro/xt.js +1 -1
- package/dist/cjs/src/probit.js +1 -1
- package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +0 -2
- package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/address.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/array.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/null.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/number.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/string.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/fragments.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/index.js +1 -10
- package/dist/cjs/src/static_dependencies/ethers/interface.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/typed.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +1 -13
- package/dist/cjs/src/static_dependencies/ethers/utils/data.js +1 -6
- package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +1 -9
- package/dist/cjs/src/static_dependencies/ethers/utils/events.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/index.js +1 -7
- package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +1 -5
- package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +1 -8
- package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +1 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +1 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +1 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
- package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
- package/dist/cjs/src/static_dependencies/node-fetch/body.js +1 -5
- package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +1 -0
- package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +1 -0
- package/dist/cjs/src/static_dependencies/node-fetch/headers.js +1 -5
- package/dist/cjs/src/static_dependencies/node-fetch/index.js +1 -7
- package/dist/cjs/src/static_dependencies/node-fetch/request.js +1 -7
- package/dist/cjs/src/static_dependencies/node-fetch/response.js +1 -5
- package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
- package/dist/cjs/src/static_dependencies/qs/formats.js +28 -0
- package/dist/cjs/src/static_dependencies/qs/index.js +25 -0
- package/{js/src/static_dependencies/qs/parse.cjs → dist/cjs/src/static_dependencies/qs/parse.js} +10 -3
- package/{js/src/static_dependencies/qs/stringify.cjs → dist/cjs/src/static_dependencies/qs/stringify.js} +13 -6
- package/dist/cjs/src/static_dependencies/qs/utils.js +197 -0
- package/dist/cjs/src/static_dependencies/scure-base/index.js +6 -0
- package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +1 -4
- package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +1 -3
- package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/num.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
- package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +6 -0
- package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +5 -1
- package/dist/cjs/src/timex.js +1 -0
- package/dist/cjs/src/tokocrypto.js +1 -1
- package/dist/cjs/src/toobit.js +1 -1
- package/dist/cjs/src/upbit.js +87 -71
- package/dist/cjs/src/wavesexchange.js +2 -1
- package/dist/cjs/src/whitebit.js +576 -33
- package/dist/cjs/src/woo.js +1 -1
- package/dist/cjs/src/woofipro.js +1 -1
- package/dist/cjs/src/xt.js +1 -1
- package/dist/cjs/src/yobit.js +2 -1
- package/dist/cjs/src/zaif.js +2 -1
- package/dist/cjs/src/zonda.js +2 -1
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +7 -1
- package/js/src/abstract/alpaca.js +6 -0
- package/js/src/abstract/apex.js +6 -0
- package/js/src/abstract/ascendex.js +6 -0
- package/js/src/abstract/backpack.js +6 -0
- package/js/src/abstract/bequant.js +6 -0
- package/js/src/abstract/bigone.js +6 -0
- package/js/src/abstract/binance.js +6 -0
- package/js/src/abstract/binancecoinm.js +6 -0
- package/js/src/abstract/binanceus.js +6 -0
- package/js/src/abstract/binanceusdm.js +6 -0
- package/js/src/abstract/bingx.js +6 -0
- package/js/src/abstract/bit2c.js +6 -0
- package/js/src/abstract/bitbank.js +6 -0
- package/js/src/abstract/bitbns.js +6 -0
- package/js/src/abstract/bitfinex.js +6 -0
- package/js/src/abstract/bitflyer.js +6 -0
- package/js/src/abstract/bitget.js +6 -0
- package/js/src/abstract/bithumb.js +6 -0
- package/js/src/abstract/bitmart.js +6 -0
- package/js/src/abstract/bitmex.js +6 -0
- package/js/src/abstract/bitopro.js +6 -0
- package/js/src/abstract/bitrue.js +6 -0
- package/js/src/abstract/bitso.js +6 -0
- package/js/src/abstract/bitstamp.js +6 -0
- package/js/src/abstract/bitteam.js +6 -0
- package/js/src/abstract/bittrade.js +6 -0
- package/js/src/abstract/bitvavo.js +6 -0
- package/js/src/abstract/blockchaincom.js +6 -0
- package/js/src/abstract/blofin.js +6 -0
- package/js/src/abstract/btcalpha.js +6 -0
- package/js/src/abstract/btcbox.js +6 -0
- package/js/src/abstract/btcmarkets.js +6 -0
- package/js/src/abstract/btcturk.js +6 -0
- package/js/src/abstract/bybit.js +6 -0
- package/js/src/abstract/cex.js +6 -0
- package/js/src/abstract/coinbase.js +6 -0
- package/js/src/abstract/coinbaseadvanced.js +6 -0
- package/js/src/abstract/coinbaseexchange.js +6 -0
- package/js/src/abstract/coinbaseinternational.js +6 -0
- package/js/src/abstract/coincatch.js +6 -0
- package/js/src/abstract/coincheck.js +6 -0
- package/js/src/abstract/coinex.js +6 -0
- package/js/src/abstract/coinmate.js +6 -0
- package/js/src/abstract/coinmetro.js +6 -0
- package/js/src/abstract/coinone.js +6 -0
- package/js/src/abstract/coinsph.js +6 -0
- package/js/src/abstract/coinspot.js +6 -0
- package/js/src/abstract/cryptocom.js +6 -0
- package/js/src/abstract/cryptomus.js +6 -0
- package/js/src/abstract/defx.js +6 -0
- package/js/src/abstract/delta.js +6 -0
- package/js/src/abstract/deribit.js +6 -0
- package/js/src/abstract/derive.js +6 -0
- package/js/src/abstract/digifinex.js +6 -0
- package/js/src/abstract/exmo.js +6 -0
- package/js/src/abstract/fmfwio.js +6 -0
- package/js/src/abstract/foxbit.js +6 -0
- package/js/src/abstract/gate.js +6 -0
- package/js/src/abstract/gateio.js +6 -0
- package/js/src/abstract/gemini.js +6 -0
- package/js/src/abstract/hashkey.js +6 -0
- package/js/src/abstract/hibachi.js +6 -0
- package/js/src/abstract/hitbtc.js +6 -0
- package/js/src/abstract/hollaex.js +6 -0
- package/js/src/abstract/htx.js +6 -0
- package/js/src/abstract/huobi.js +6 -0
- package/js/src/abstract/hyperliquid.js +6 -0
- package/js/src/abstract/independentreserve.js +6 -0
- package/js/src/abstract/indodax.js +6 -0
- package/js/src/abstract/kraken.js +6 -0
- package/js/src/abstract/krakenfutures.js +6 -0
- package/js/src/abstract/kucoin.js +6 -0
- package/js/src/abstract/kucoinfutures.js +6 -0
- package/js/src/abstract/latoken.js +6 -0
- package/js/src/abstract/lbank.js +6 -0
- package/js/src/abstract/luno.js +6 -0
- package/js/src/abstract/mercado.js +6 -0
- package/js/src/abstract/mexc.d.ts +1 -0
- package/js/src/abstract/mexc.js +6 -0
- package/js/src/abstract/modetrade.js +6 -0
- package/js/src/abstract/myokx.js +6 -0
- package/js/src/abstract/ndax.js +6 -0
- package/js/src/abstract/novadax.js +6 -0
- package/js/src/abstract/oceanex.js +6 -0
- package/js/src/abstract/okcoin.js +6 -0
- package/js/src/abstract/okx.js +6 -0
- package/js/src/abstract/okxus.js +6 -0
- package/js/src/abstract/onetrading.js +6 -0
- package/js/src/abstract/oxfun.js +6 -0
- package/js/src/abstract/p2b.js +6 -0
- package/js/src/abstract/paradex.js +6 -0
- package/js/src/abstract/paymium.js +6 -0
- package/js/src/abstract/phemex.js +6 -0
- package/js/src/abstract/poloniex.js +6 -0
- package/js/src/abstract/probit.js +6 -0
- package/js/src/abstract/timex.js +6 -0
- package/js/src/abstract/tokocrypto.js +6 -0
- package/js/src/abstract/toobit.js +6 -0
- package/js/src/abstract/upbit.d.ts +1 -0
- package/js/src/abstract/upbit.js +6 -0
- package/js/src/abstract/wavesexchange.js +6 -0
- package/js/src/abstract/whitebit.d.ts +1 -1
- package/js/src/abstract/whitebit.js +6 -0
- package/js/src/abstract/woo.js +6 -0
- package/js/src/abstract/woofipro.js +6 -0
- package/js/src/abstract/xt.js +6 -0
- package/js/src/abstract/yobit.js +6 -0
- package/js/src/abstract/zaif.js +6 -0
- package/js/src/abstract/zonda.js +6 -0
- package/js/src/alpaca.js +6 -0
- package/js/src/apex.js +8 -2
- package/js/src/ascendex.js +6 -0
- package/js/src/backpack.d.ts +1 -1
- package/js/src/backpack.js +27 -3
- package/js/src/base/Exchange.js +39 -11
- package/js/src/base/Precise.js +6 -0
- package/js/src/base/errorHierarchy.js +6 -0
- package/js/src/base/errors.js +6 -0
- package/js/src/base/functions/crypto.js +6 -0
- package/js/src/base/functions/encode.js +7 -1
- package/js/src/base/functions/generic.js +6 -0
- package/js/src/base/functions/misc.js +6 -0
- package/js/src/base/functions/number.js +6 -0
- package/js/src/base/functions/platform.js +6 -0
- package/js/src/base/functions/rsa.js +6 -0
- package/js/src/base/functions/string.js +6 -0
- package/js/src/base/functions/throttle.js +6 -0
- package/js/src/base/functions/time.js +6 -0
- package/js/src/base/functions/totp.js +6 -0
- package/js/src/base/functions/type.js +6 -0
- package/js/src/base/functions.js +6 -0
- package/js/src/base/types.js +6 -0
- package/js/src/base/ws/Cache.js +6 -0
- package/js/src/base/ws/Client.js +6 -0
- package/js/src/base/ws/Future.js +6 -0
- package/js/src/base/ws/OrderBook.js +6 -0
- package/js/src/base/ws/OrderBookSide.js +6 -0
- package/js/src/base/ws/WsClient.js +6 -0
- package/js/src/base/ws/functions.js +6 -0
- package/js/src/bequant.js +6 -0
- package/js/src/bigone.js +6 -0
- package/js/src/binance.d.ts +1 -1
- package/js/src/binance.js +18 -8
- package/js/src/binancecoinm.js +6 -0
- package/js/src/binanceus.js +6 -0
- package/js/src/binanceusdm.js +6 -0
- package/js/src/bingx.js +6 -0
- package/js/src/bit2c.js +6 -0
- package/js/src/bitbank.js +7 -0
- package/js/src/bitbns.js +7 -0
- package/js/src/bitfinex.js +6 -0
- package/js/src/bitflyer.js +7 -0
- package/js/src/bitget.js +6 -0
- package/js/src/bithumb.js +15 -0
- package/js/src/bitmart.js +6 -0
- package/js/src/bitmex.js +6 -0
- package/js/src/bitopro.js +6 -0
- package/js/src/bitrue.js +6 -0
- package/js/src/bitso.js +7 -0
- package/js/src/bitstamp.js +6 -0
- package/js/src/bitteam.js +6 -0
- package/js/src/bittrade.js +6 -0
- package/js/src/bitvavo.d.ts +1 -3
- package/js/src/bitvavo.js +50 -43
- package/js/src/blockchaincom.js +7 -0
- package/js/src/blofin.js +6 -0
- package/js/src/btcalpha.js +7 -0
- package/js/src/btcbox.js +7 -0
- package/js/src/btcmarkets.js +7 -0
- package/js/src/btcturk.js +7 -0
- package/js/src/bybit.js +6 -0
- package/js/src/cex.js +6 -0
- package/js/src/coinbase.js +7 -1
- package/js/src/coinbaseadvanced.js +6 -0
- package/js/src/coinbaseexchange.js +6 -0
- package/js/src/coinbaseinternational.js +6 -0
- package/js/src/coincatch.js +6 -0
- package/js/src/coincheck.js +6 -0
- package/js/src/coinex.js +6 -0
- package/js/src/coinmate.js +6 -0
- package/js/src/coinmetro.js +6 -0
- package/js/src/coinone.js +6 -0
- package/js/src/coinsph.js +6 -0
- package/js/src/coinspot.js +6 -0
- package/js/src/cryptocom.js +6 -0
- package/js/src/cryptomus.js +6 -0
- package/js/src/defx.js +6 -0
- package/js/src/delta.js +6 -0
- package/js/src/deribit.js +9 -2
- package/js/src/derive.js +6 -0
- package/js/src/digifinex.js +7 -1
- package/js/src/exmo.js +6 -0
- package/js/src/fmfwio.js +6 -0
- package/js/src/foxbit.js +6 -0
- package/js/src/gate.d.ts +2 -2
- package/js/src/gate.js +14 -12
- package/js/src/gateio.js +6 -0
- package/js/src/gemini.js +9 -3
- package/js/src/hashkey.js +6 -0
- package/js/src/hibachi.d.ts +1 -9
- package/js/src/hibachi.js +9 -10
- package/js/src/hitbtc.js +6 -0
- package/js/src/hollaex.js +6 -0
- package/js/src/htx.js +17 -1
- package/js/src/huobi.js +6 -0
- package/js/src/hyperliquid.d.ts +2 -0
- package/js/src/hyperliquid.js +44 -2
- package/js/src/independentreserve.js +7 -0
- package/js/src/indodax.js +23 -6
- package/js/src/kraken.d.ts +1 -1
- package/js/src/kraken.js +31 -6
- package/js/src/krakenfutures.js +7 -0
- package/js/src/kucoin.js +6 -0
- package/js/src/kucoinfutures.js +6 -0
- package/js/src/latoken.js +6 -0
- package/js/src/lbank.js +10 -1
- package/js/src/luno.js +6 -0
- package/js/src/mercado.js +7 -0
- package/js/src/mexc.d.ts +4 -1
- package/js/src/mexc.js +86 -36
- package/js/src/modetrade.js +6 -0
- package/js/src/myokx.js +6 -0
- package/js/src/ndax.js +6 -0
- package/js/src/novadax.js +7 -0
- package/js/src/oceanex.js +7 -0
- package/js/src/okcoin.js +6 -0
- package/js/src/okx.js +25 -6
- package/js/src/okxus.js +6 -0
- package/js/src/onetrading.js +6 -0
- package/js/src/oxfun.d.ts +1 -1
- package/js/src/oxfun.js +19 -3
- package/js/src/p2b.js +6 -0
- package/js/src/paradex.js +6 -0
- package/js/src/paymium.js +6 -0
- package/js/src/phemex.js +6 -0
- package/js/src/poloniex.js +6 -0
- package/js/src/pro/alpaca.js +6 -0
- package/js/src/pro/apex.js +13 -4
- package/js/src/pro/ascendex.js +6 -0
- package/js/src/pro/backpack.js +14 -6
- package/js/src/pro/bequant.js +6 -0
- package/js/src/pro/binance.js +6 -0
- package/js/src/pro/binancecoinm.js +6 -0
- package/js/src/pro/binanceus.js +6 -0
- package/js/src/pro/binanceusdm.js +6 -0
- package/js/src/pro/bingx.d.ts +53 -33
- package/js/src/pro/bingx.js +213 -221
- package/js/src/pro/bitfinex.js +6 -0
- package/js/src/pro/bitget.js +6 -0
- package/js/src/pro/bithumb.js +6 -0
- package/js/src/pro/bitmart.js +6 -0
- package/js/src/pro/bitmex.js +6 -0
- package/js/src/pro/bitopro.js +6 -0
- package/js/src/pro/bitrue.js +6 -0
- package/js/src/pro/bitstamp.js +6 -0
- package/js/src/pro/bittrade.js +6 -0
- package/js/src/pro/bitvavo.js +6 -0
- package/js/src/pro/blockchaincom.js +6 -0
- package/js/src/pro/blofin.js +6 -0
- package/js/src/pro/bybit.js +6 -0
- package/js/src/pro/cex.js +6 -0
- package/js/src/pro/coinbase.js +6 -0
- package/js/src/pro/coinbaseadvanced.js +6 -0
- package/js/src/pro/coinbaseexchange.js +6 -0
- package/js/src/pro/coinbaseinternational.js +6 -0
- package/js/src/pro/coincatch.js +6 -0
- package/js/src/pro/coincheck.js +6 -0
- package/js/src/pro/coinex.js +12 -5
- package/js/src/pro/coinone.js +6 -0
- package/js/src/pro/cryptocom.js +6 -0
- package/js/src/pro/defx.js +6 -0
- package/js/src/pro/deribit.js +6 -0
- package/js/src/pro/derive.js +6 -0
- package/js/src/pro/exmo.js +6 -0
- package/js/src/pro/gate.js +6 -0
- package/js/src/pro/gateio.js +6 -0
- package/js/src/pro/gemini.js +6 -0
- package/js/src/pro/hashkey.js +6 -0
- package/js/src/pro/hitbtc.js +6 -0
- package/js/src/pro/hollaex.js +6 -0
- package/js/src/pro/htx.d.ts +53 -1
- package/js/src/pro/htx.js +158 -9
- package/js/src/pro/huobi.js +6 -0
- package/js/src/pro/hyperliquid.js +6 -0
- package/js/src/pro/independentreserve.js +6 -0
- package/js/src/pro/kraken.js +6 -0
- package/js/src/pro/krakenfutures.js +6 -0
- package/js/src/pro/kucoin.js +6 -0
- package/js/src/pro/kucoinfutures.js +6 -0
- package/js/src/pro/lbank.js +6 -0
- package/js/src/pro/luno.js +6 -0
- package/js/src/pro/mexc.js +6 -0
- package/js/src/pro/modetrade.js +6 -0
- package/js/src/pro/myokx.js +6 -0
- package/js/src/pro/ndax.js +6 -0
- package/js/src/pro/okcoin.js +6 -0
- package/js/src/pro/okx.js +6 -0
- package/js/src/pro/okxus.js +6 -0
- package/js/src/pro/onetrading.js +6 -0
- package/js/src/pro/oxfun.js +6 -0
- package/js/src/pro/p2b.js +6 -0
- package/js/src/pro/paradex.js +6 -0
- package/js/src/pro/phemex.d.ts +3 -3
- package/js/src/pro/phemex.js +14 -6
- package/js/src/pro/poloniex.js +6 -0
- package/js/src/pro/probit.js +6 -0
- package/js/src/pro/toobit.js +6 -0
- package/js/src/pro/upbit.js +6 -0
- package/js/src/pro/whitebit.js +6 -0
- package/js/src/pro/woo.d.ts +65 -1
- package/js/src/pro/woo.js +174 -6
- package/js/src/pro/woofipro.js +6 -0
- package/js/src/pro/xt.js +6 -0
- package/js/src/probit.js +6 -0
- package/js/src/protobuf/mexc/compiled.cjs +6 -0
- package/js/src/static_dependencies/ethers/abi-coder.js +6 -0
- package/js/src/static_dependencies/ethers/address/address.js +6 -0
- package/js/src/static_dependencies/ethers/address/checks.js +6 -0
- package/js/src/static_dependencies/ethers/address/contract-address.js +6 -0
- package/js/src/static_dependencies/ethers/address/index.js +6 -0
- package/js/src/static_dependencies/ethers/bytes32.js +6 -0
- package/js/src/static_dependencies/ethers/coders/abstract-coder.js +6 -0
- package/js/src/static_dependencies/ethers/coders/address.js +6 -0
- package/js/src/static_dependencies/ethers/coders/anonymous.js +6 -0
- package/js/src/static_dependencies/ethers/coders/array.js +6 -0
- package/js/src/static_dependencies/ethers/coders/boolean.js +6 -0
- package/js/src/static_dependencies/ethers/coders/bytes.js +6 -0
- package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +6 -0
- package/js/src/static_dependencies/ethers/coders/null.js +6 -0
- package/js/src/static_dependencies/ethers/coders/number.js +6 -0
- package/js/src/static_dependencies/ethers/coders/string.js +6 -0
- package/js/src/static_dependencies/ethers/coders/tuple.js +6 -0
- package/js/src/static_dependencies/ethers/fragments.js +6 -0
- package/js/src/static_dependencies/ethers/hash/index.js +6 -0
- package/js/src/static_dependencies/ethers/hash/solidity.js +6 -0
- package/js/src/static_dependencies/ethers/hash/typed-data.js +6 -0
- package/js/src/static_dependencies/ethers/index.js +6 -0
- package/js/src/static_dependencies/ethers/interface.js +6 -0
- package/js/src/static_dependencies/ethers/typed.js +6 -0
- package/js/src/static_dependencies/ethers/utils/base58.js +6 -0
- package/js/src/static_dependencies/ethers/utils/base64-browser.js +6 -0
- package/js/src/static_dependencies/ethers/utils/base64.js +6 -0
- package/js/src/static_dependencies/ethers/utils/data.js +6 -0
- package/js/src/static_dependencies/ethers/utils/errors.js +6 -0
- package/js/src/static_dependencies/ethers/utils/events.js +6 -0
- package/js/src/static_dependencies/ethers/utils/fixednumber.js +6 -0
- package/js/src/static_dependencies/ethers/utils/index.js +6 -0
- package/js/src/static_dependencies/ethers/utils/maths.js +6 -0
- package/js/src/static_dependencies/ethers/utils/properties.js +6 -0
- package/js/src/static_dependencies/ethers/utils/rlp-decode.js +6 -0
- package/js/src/static_dependencies/ethers/utils/rlp-encode.js +6 -0
- package/js/src/static_dependencies/ethers/utils/rlp.js +6 -0
- package/js/src/static_dependencies/ethers/utils/units.js +6 -0
- package/js/src/static_dependencies/ethers/utils/utf8.js +6 -0
- package/js/src/static_dependencies/ethers/utils/uuid.js +6 -0
- package/js/src/static_dependencies/fflake/browser.js +6 -0
- package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +6 -0
- package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +6 -0
- package/js/src/static_dependencies/jsencrypt/index.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
- package/js/src/static_dependencies/messagepack/msgpack.js +6 -0
- package/js/src/static_dependencies/noble-curves/_shortw_utils.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/curve.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/edwards.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/modular.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/utils.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +6 -0
- package/js/src/static_dependencies/noble-curves/bn.js +6 -0
- package/js/src/static_dependencies/noble-curves/ed25519.js +6 -0
- package/js/src/static_dependencies/noble-curves/ed448.js +6 -0
- package/js/src/static_dependencies/noble-curves/index.js +6 -0
- package/js/src/static_dependencies/noble-curves/jubjub.js +6 -0
- package/js/src/static_dependencies/noble-curves/p256.js +6 -0
- package/js/src/static_dependencies/noble-curves/p384.js +6 -0
- package/js/src/static_dependencies/noble-curves/p521.js +6 -0
- package/js/src/static_dependencies/noble-curves/pasta.js +6 -0
- package/js/src/static_dependencies/noble-curves/secp256k1.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_assert.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_blake2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_sha2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_u64.js +6 -0
- package/js/src/static_dependencies/noble-hashes/argon2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/blake2b.js +6 -0
- package/js/src/static_dependencies/noble-hashes/blake2s.js +6 -0
- package/js/src/static_dependencies/noble-hashes/blake3.js +6 -0
- package/js/src/static_dependencies/noble-hashes/crypto.js +6 -0
- package/js/src/static_dependencies/noble-hashes/cryptoNode.js +6 -0
- package/js/src/static_dependencies/noble-hashes/eskdf.js +6 -0
- package/js/src/static_dependencies/noble-hashes/hkdf.js +6 -0
- package/js/src/static_dependencies/noble-hashes/hmac.js +6 -0
- package/js/src/static_dependencies/noble-hashes/index.js +6 -0
- package/js/src/static_dependencies/noble-hashes/md5.js +6 -0
- package/js/src/static_dependencies/noble-hashes/pbkdf2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/ripemd160.js +6 -0
- package/js/src/static_dependencies/noble-hashes/scrypt.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha1.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha256.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha3-addons.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha3.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha512.js +6 -0
- package/js/src/static_dependencies/noble-hashes/utils.js +6 -0
- package/js/src/static_dependencies/node-fetch/body.js +6 -0
- package/js/src/static_dependencies/node-fetch/errors/abort-error.js +6 -0
- package/js/src/static_dependencies/node-fetch/errors/base.js +6 -0
- package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +6 -0
- package/js/src/static_dependencies/node-fetch/headers.js +6 -0
- package/js/src/static_dependencies/node-fetch/index.js +6 -0
- package/js/src/static_dependencies/node-fetch/request.js +6 -0
- package/js/src/static_dependencies/node-fetch/response.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/is.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/referrer.js +6 -0
- package/js/src/static_dependencies/proxies/agent-base/helpers.js +6 -0
- package/js/src/static_dependencies/proxies/agent-base/index.js +6 -0
- package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +6 -0
- package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +6 -0
- package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
- package/js/src/static_dependencies/qs/formats.d.ts +8 -0
- package/js/src/static_dependencies/qs/formats.js +21 -0
- package/js/src/static_dependencies/qs/index.d.ts +19 -0
- package/js/src/static_dependencies/qs/index.js +21 -0
- package/js/src/static_dependencies/qs/parse.d.ts +1 -0
- package/js/src/static_dependencies/qs/parse.js +207 -0
- package/js/src/static_dependencies/qs/stringify.d.ts +1 -0
- package/js/src/static_dependencies/qs/stringify.js +191 -0
- package/js/src/static_dependencies/qs/{utils.cjs → utils.js} +7 -12
- package/js/src/static_dependencies/scure-base/index.js +6 -0
- package/js/src/static_dependencies/scure-starknet/index.js +6 -0
- package/js/src/static_dependencies/starknet/constants.js +6 -0
- package/js/src/static_dependencies/starknet/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/cairoEnum.js +6 -0
- package/js/src/static_dependencies/starknet/types/calldata.js +6 -0
- package/js/src/static_dependencies/starknet/types/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/typedData.js +6 -0
- package/js/src/static_dependencies/starknet/utils/address.js +6 -0
- package/js/src/static_dependencies/starknet/utils/assert.js +6 -0
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +6 -0
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +6 -0
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/validate.js +6 -0
- package/js/src/static_dependencies/starknet/utils/encode.js +6 -0
- package/js/src/static_dependencies/starknet/utils/hash/classHash.js +6 -0
- package/js/src/static_dependencies/starknet/utils/hash/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/merkle.js +6 -0
- package/js/src/static_dependencies/starknet/utils/num.js +6 -0
- package/js/src/static_dependencies/starknet/utils/selector.js +6 -0
- package/js/src/static_dependencies/starknet/utils/shortString.js +6 -0
- package/js/src/static_dependencies/starknet/utils/starknetId.js +6 -0
- package/js/src/static_dependencies/starknet/utils/typedData.js +6 -0
- package/js/src/static_dependencies/starknet/utils/uint256.js +6 -0
- package/js/src/static_dependencies/starknet/utils/url.js +6 -0
- package/js/src/static_dependencies/watchable/src/index.js +6 -0
- package/js/src/static_dependencies/watchable/src/types.js +6 -0
- package/js/src/static_dependencies/watchable/src/unpromise.js +6 -0
- package/js/src/static_dependencies/zklink/zklink-sdk-web.js +6 -0
- package/js/src/timex.js +6 -0
- package/js/src/tokocrypto.js +6 -0
- package/js/src/toobit.js +6 -0
- package/js/src/upbit.d.ts +5 -3
- package/js/src/upbit.js +92 -70
- package/js/src/wavesexchange.js +7 -0
- package/js/src/whitebit.d.ts +84 -1
- package/js/src/whitebit.js +581 -32
- package/js/src/woo.js +6 -0
- package/js/src/woofipro.js +6 -0
- package/js/src/xt.js +6 -0
- package/js/src/yobit.js +7 -0
- package/js/src/zaif.js +7 -0
- package/js/src/zonda.js +7 -0
- package/package.json +1 -1
- package/js/src/static_dependencies/qs/formats.cjs +0 -16
- package/js/src/static_dependencies/qs/formats.d.cts +0 -8
- package/js/src/static_dependencies/qs/index.cjs +0 -9
- package/js/src/static_dependencies/qs/index.d.cts +0 -4
- package/js/src/static_dependencies/qs/parse.d.cts +0 -2
- package/js/src/static_dependencies/qs/stringify.d.cts +0 -2
- /package/js/src/static_dependencies/qs/{utils.d.cts → utils.d.ts} +0 -0
package/dist/cjs/src/whitebit.js
CHANGED
|
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
|
|
|
8
8
|
var number = require('./base/functions/number.js');
|
|
9
9
|
var sha512 = require('./static_dependencies/noble-hashes/sha512.js');
|
|
10
10
|
|
|
11
|
-
//
|
|
11
|
+
// ----------------------------------------------------------------------------
|
|
12
12
|
// ---------------------------------------------------------------------------
|
|
13
13
|
/**
|
|
14
14
|
* @class whitebit
|
|
@@ -45,7 +45,8 @@ class whitebit extends whitebit$1["default"] {
|
|
|
45
45
|
'createStopMarketOrder': true,
|
|
46
46
|
'createStopOrder': true,
|
|
47
47
|
'createTriggerOrder': true,
|
|
48
|
-
'editOrder':
|
|
48
|
+
'editOrder': true,
|
|
49
|
+
'fetchAccounts': true,
|
|
49
50
|
'fetchBalance': true,
|
|
50
51
|
'fetchBorrowRateHistories': false,
|
|
51
52
|
'fetchBorrowRateHistory': false,
|
|
@@ -65,12 +66,14 @@ class whitebit extends whitebit$1["default"] {
|
|
|
65
66
|
'fetchDepositWithdrawFee': 'emulated',
|
|
66
67
|
'fetchDepositWithdrawFees': true,
|
|
67
68
|
'fetchFundingHistory': true,
|
|
69
|
+
'fetchFundingLimits': true,
|
|
68
70
|
'fetchFundingRate': true,
|
|
69
71
|
'fetchFundingRateHistory': false,
|
|
70
72
|
'fetchFundingRates': true,
|
|
71
73
|
'fetchIndexOHLCV': false,
|
|
72
74
|
'fetchIsolatedBorrowRate': false,
|
|
73
75
|
'fetchIsolatedBorrowRates': false,
|
|
76
|
+
'fetchLedger': false,
|
|
74
77
|
'fetchMarginMode': false,
|
|
75
78
|
'fetchMarkets': true,
|
|
76
79
|
'fetchMarkOHLCV': false,
|
|
@@ -78,7 +81,9 @@ class whitebit extends whitebit$1["default"] {
|
|
|
78
81
|
'fetchOHLCV': true,
|
|
79
82
|
'fetchOpenInterestHistory': false,
|
|
80
83
|
'fetchOpenOrders': true,
|
|
84
|
+
'fetchOrder': true,
|
|
81
85
|
'fetchOrderBook': true,
|
|
86
|
+
'fetchOrders': true,
|
|
82
87
|
'fetchOrderTrades': true,
|
|
83
88
|
'fetchPosition': true,
|
|
84
89
|
'fetchPositionHistory': true,
|
|
@@ -92,7 +97,10 @@ class whitebit extends whitebit$1["default"] {
|
|
|
92
97
|
'fetchTrades': true,
|
|
93
98
|
'fetchTradingFee': false,
|
|
94
99
|
'fetchTradingFees': true,
|
|
100
|
+
'fetchTradingLimits': true,
|
|
95
101
|
'fetchTransactionFees': true,
|
|
102
|
+
'fetchTransactions': true,
|
|
103
|
+
'fetchWithdrawals': true,
|
|
96
104
|
'repayCrossMargin': false,
|
|
97
105
|
'repayIsolatedMargin': false,
|
|
98
106
|
'setLeverage': true,
|
|
@@ -226,8 +234,8 @@ class whitebit extends whitebit$1["default"] {
|
|
|
226
234
|
'main-account/smart/interest-payment-history',
|
|
227
235
|
'trade-account/balance',
|
|
228
236
|
'trade-account/executed-history',
|
|
229
|
-
'trade-account/order',
|
|
230
237
|
'trade-account/order/history',
|
|
238
|
+
'trade-account/order',
|
|
231
239
|
'order/collateral/limit',
|
|
232
240
|
'order/collateral/market',
|
|
233
241
|
'order/collateral/stop-limit',
|
|
@@ -339,7 +347,14 @@ class whitebit extends whitebit$1["default"] {
|
|
|
339
347
|
'untilDays': undefined,
|
|
340
348
|
'symbolRequired': false,
|
|
341
349
|
},
|
|
342
|
-
'fetchOrder':
|
|
350
|
+
'fetchOrder': {
|
|
351
|
+
'checkActive': true,
|
|
352
|
+
'checkExecuted': true,
|
|
353
|
+
'symbolRequired': false,
|
|
354
|
+
'marginMode': false,
|
|
355
|
+
'trigger': false,
|
|
356
|
+
'trailing': false,
|
|
357
|
+
},
|
|
343
358
|
'fetchOpenOrders': {
|
|
344
359
|
'marginMode': false,
|
|
345
360
|
'limit': 100,
|
|
@@ -347,7 +362,15 @@ class whitebit extends whitebit$1["default"] {
|
|
|
347
362
|
'trailing': false,
|
|
348
363
|
'symbolRequired': false,
|
|
349
364
|
},
|
|
350
|
-
'fetchOrders':
|
|
365
|
+
'fetchOrders': {
|
|
366
|
+
'marginMode': false,
|
|
367
|
+
'limit': 100,
|
|
368
|
+
'daysBack': undefined,
|
|
369
|
+
'untilDays': undefined,
|
|
370
|
+
'trigger': false,
|
|
371
|
+
'trailing': false,
|
|
372
|
+
'symbolRequired': false,
|
|
373
|
+
},
|
|
351
374
|
'fetchClosedOrders': {
|
|
352
375
|
'marginMode': false,
|
|
353
376
|
'limit': 100,
|
|
@@ -361,6 +384,13 @@ class whitebit extends whitebit$1["default"] {
|
|
|
361
384
|
'fetchOHLCV': {
|
|
362
385
|
'limit': 1440,
|
|
363
386
|
},
|
|
387
|
+
'fetchWithdrawals': {
|
|
388
|
+
'marginMode': false,
|
|
389
|
+
'limit': 100,
|
|
390
|
+
'daysBack': undefined,
|
|
391
|
+
'untilDays': undefined,
|
|
392
|
+
'symbolRequired': false,
|
|
393
|
+
},
|
|
364
394
|
},
|
|
365
395
|
'spot': {
|
|
366
396
|
'extends': 'default',
|
|
@@ -932,6 +962,265 @@ class whitebit extends whitebit$1["default"] {
|
|
|
932
962
|
}
|
|
933
963
|
return result;
|
|
934
964
|
}
|
|
965
|
+
/**
|
|
966
|
+
* @method
|
|
967
|
+
* @name whitebit#fetchTradingLimits
|
|
968
|
+
* @description fetch the trading limits for a market
|
|
969
|
+
* @see https://docs.whitebit.com/public/http-v4/#market-info
|
|
970
|
+
* @param {string[]|undefined} symbols unified market symbol
|
|
971
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
972
|
+
* @returns {object} a [trading limits structure]{@link https://docs.ccxt.com/#/?id=trading-limits-structure}
|
|
973
|
+
*/
|
|
974
|
+
async fetchTradingLimits(symbols = undefined, params = {}) {
|
|
975
|
+
await this.loadMarkets();
|
|
976
|
+
//
|
|
977
|
+
// Trading limits are derived from market information already loaded by loadMarkets()
|
|
978
|
+
// Market structure includes:
|
|
979
|
+
// {
|
|
980
|
+
// "id": "BTC_USDT", // Market ID
|
|
981
|
+
// "symbol": "BTC/USDT", // Unified symbol
|
|
982
|
+
// "base": "BTC", // Base currency
|
|
983
|
+
// "quote": "USDT", // Quote currency
|
|
984
|
+
// "active": true, // Market active status
|
|
985
|
+
// "type": "spot", // Market type
|
|
986
|
+
// "spot": true, // Spot trading enabled
|
|
987
|
+
// "margin": false, // Margin trading enabled
|
|
988
|
+
// "future": false, // Futures trading enabled
|
|
989
|
+
// "option": false, // Options trading enabled
|
|
990
|
+
// "contract": false, // Contract trading enabled
|
|
991
|
+
// "settle": undefined, // Settlement currency
|
|
992
|
+
// "settleId": undefined, // Settlement currency ID
|
|
993
|
+
// "contractSize": undefined, // Contract size
|
|
994
|
+
// "linear": undefined, // Linear contract
|
|
995
|
+
// "inverse": undefined, // Inverse contract
|
|
996
|
+
// "limits": { // Trading limits
|
|
997
|
+
// "amount": { // Amount limits
|
|
998
|
+
// "min": 0.00001, // Minimum amount
|
|
999
|
+
// "max": 1000000 // Maximum amount
|
|
1000
|
+
// },
|
|
1001
|
+
// "price": { // Price limits
|
|
1002
|
+
// "min": 0.01, // Minimum price
|
|
1003
|
+
// "max": 1000000 // Maximum price
|
|
1004
|
+
// },
|
|
1005
|
+
// "cost": { // Cost limits
|
|
1006
|
+
// "min": 5.0, // Minimum cost
|
|
1007
|
+
// "max": 10000000 // Maximum cost
|
|
1008
|
+
// }
|
|
1009
|
+
// },
|
|
1010
|
+
// "precision": { // Precision settings
|
|
1011
|
+
// "amount": 5, // Amount precision
|
|
1012
|
+
// "price": 2 // Price precision
|
|
1013
|
+
// },
|
|
1014
|
+
// "taker": 0.001, // Taker fee
|
|
1015
|
+
// "maker": 0.001, // Maker fee
|
|
1016
|
+
// "percentage": true, // Fee percentage
|
|
1017
|
+
// "tierBased": false // Tier-based fees
|
|
1018
|
+
// }
|
|
1019
|
+
//
|
|
1020
|
+
const result = {};
|
|
1021
|
+
// Process all markets from the loaded markets cache
|
|
1022
|
+
const marketIds = Object.keys(this.markets);
|
|
1023
|
+
for (let i = 0; i < marketIds.length; i++) {
|
|
1024
|
+
const marketId = marketIds[i];
|
|
1025
|
+
const market = this.markets[marketId];
|
|
1026
|
+
if (!market || !market['symbol']) {
|
|
1027
|
+
continue; // Skip invalid markets silently
|
|
1028
|
+
}
|
|
1029
|
+
const symbol = market['symbol'];
|
|
1030
|
+
// Filter by symbols if specified
|
|
1031
|
+
if (symbols) {
|
|
1032
|
+
let symbolFound = false;
|
|
1033
|
+
for (let j = 0; j < symbols.length; j++) {
|
|
1034
|
+
if (symbols[j] === symbol) {
|
|
1035
|
+
symbolFound = true;
|
|
1036
|
+
break;
|
|
1037
|
+
}
|
|
1038
|
+
}
|
|
1039
|
+
if (!symbolFound) {
|
|
1040
|
+
continue; // Skip symbols not in requested list
|
|
1041
|
+
}
|
|
1042
|
+
}
|
|
1043
|
+
// Extract trading limits
|
|
1044
|
+
const limits = this.safeDict(market, 'limits');
|
|
1045
|
+
const amountLimits = this.safeDict(limits, 'amount');
|
|
1046
|
+
const priceLimits = this.safeDict(limits, 'price');
|
|
1047
|
+
const costLimits = this.safeDict(limits, 'cost');
|
|
1048
|
+
// Validate that all required limits exist and are valid numbers
|
|
1049
|
+
const hasAmountLimits = amountLimits && this.safeNumber(amountLimits, 'min') !== undefined && this.safeNumber(amountLimits, 'max') !== undefined;
|
|
1050
|
+
const hasPriceLimits = priceLimits && this.safeNumber(priceLimits, 'min') !== undefined && this.safeNumber(priceLimits, 'max') !== undefined;
|
|
1051
|
+
const hasCostLimits = costLimits && this.safeNumber(costLimits, 'min') !== undefined && this.safeNumber(costLimits, 'max') !== undefined;
|
|
1052
|
+
if (hasAmountLimits && hasPriceLimits && hasCostLimits) {
|
|
1053
|
+
result[symbol] = {
|
|
1054
|
+
'info': market,
|
|
1055
|
+
'limits': {
|
|
1056
|
+
'amount': {
|
|
1057
|
+
'min': this.safeNumber(amountLimits, 'min'),
|
|
1058
|
+
'max': this.safeNumber(amountLimits, 'max'),
|
|
1059
|
+
},
|
|
1060
|
+
'price': {
|
|
1061
|
+
'min': this.safeNumber(priceLimits, 'min'),
|
|
1062
|
+
'max': this.safeNumber(priceLimits, 'max'),
|
|
1063
|
+
},
|
|
1064
|
+
'cost': {
|
|
1065
|
+
'min': this.safeNumber(costLimits, 'min'),
|
|
1066
|
+
'max': this.safeNumber(costLimits, 'max'),
|
|
1067
|
+
},
|
|
1068
|
+
},
|
|
1069
|
+
};
|
|
1070
|
+
}
|
|
1071
|
+
}
|
|
1072
|
+
return result;
|
|
1073
|
+
}
|
|
1074
|
+
/**
|
|
1075
|
+
* @method
|
|
1076
|
+
* @name whitebit#fetchFundingLimits
|
|
1077
|
+
* @description fetch the deposit and withdrawal limits for a currency
|
|
1078
|
+
* @see https://docs.whitebit.com/public/http-v4/#asset-status-list
|
|
1079
|
+
* @see https://docs.whitebit.com/public/http-v4/#fee
|
|
1080
|
+
* @param {string[]|undefined} codes unified currency codes
|
|
1081
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1082
|
+
* @returns {object} a [funding limits structure]{@link https://docs.ccxt.com/#/?id=funding-limits-structure}
|
|
1083
|
+
*/
|
|
1084
|
+
async fetchFundingLimits(codes = undefined, params = {}) {
|
|
1085
|
+
await this.loadMarkets();
|
|
1086
|
+
// Fetch both currencies and fees data for comprehensive funding limits
|
|
1087
|
+
const [currenciesData, feesData] = await Promise.all([
|
|
1088
|
+
this.fetchCurrencies(),
|
|
1089
|
+
this.v4PublicGetFee(params),
|
|
1090
|
+
]);
|
|
1091
|
+
//
|
|
1092
|
+
// Currencies response structure (from fetchCurrencies):
|
|
1093
|
+
// {
|
|
1094
|
+
// "BTC": {
|
|
1095
|
+
// "id": "BTC", // Currency ID
|
|
1096
|
+
// "code": "BTC", // Currency code
|
|
1097
|
+
// "name": "Bitcoin", // Currency name
|
|
1098
|
+
// "active": true, // Currency active status
|
|
1099
|
+
// "type": "crypto", // Currency type
|
|
1100
|
+
// "precision": 8, // Currency precision
|
|
1101
|
+
// "limits": { // Currency limits
|
|
1102
|
+
// "deposit": { // Deposit limits
|
|
1103
|
+
// "min": 0.00001, // Minimum deposit
|
|
1104
|
+
// "max": 1000000 // Maximum deposit
|
|
1105
|
+
// },
|
|
1106
|
+
// "withdraw": { // Withdrawal limits
|
|
1107
|
+
// "min": 0.00001, // Minimum withdrawal
|
|
1108
|
+
// "max": 1000000 // Maximum withdrawal
|
|
1109
|
+
// }
|
|
1110
|
+
// },
|
|
1111
|
+
// "networks": { // Network-specific limits
|
|
1112
|
+
// "BTC": {
|
|
1113
|
+
// "limits": {
|
|
1114
|
+
// "deposit": { "min": "0.001" },
|
|
1115
|
+
// "withdraw": { "min": "0.002" }
|
|
1116
|
+
// }
|
|
1117
|
+
// }
|
|
1118
|
+
// },
|
|
1119
|
+
// "info": { ... } // Original API response
|
|
1120
|
+
// }
|
|
1121
|
+
// }
|
|
1122
|
+
//
|
|
1123
|
+
// Fees response structure (from /api/v4/public/fee):
|
|
1124
|
+
// {
|
|
1125
|
+
// "USDT (ERC20)": {
|
|
1126
|
+
// "ticker": "USDT",
|
|
1127
|
+
// "name": "Tether US",
|
|
1128
|
+
// "deposit": {
|
|
1129
|
+
// "min_amount": "0.0005",
|
|
1130
|
+
// "max_amount": "0.1",
|
|
1131
|
+
// "fixed": "0.0005",
|
|
1132
|
+
// "flex": {
|
|
1133
|
+
// "min_fee": "100",
|
|
1134
|
+
// "max_fee": "1000",
|
|
1135
|
+
// "percent": "10"
|
|
1136
|
+
// }
|
|
1137
|
+
// },
|
|
1138
|
+
// "withdraw": {
|
|
1139
|
+
// "min_amount": "0.001",
|
|
1140
|
+
// "max_amount": "0",
|
|
1141
|
+
// "fixed": null,
|
|
1142
|
+
// "flex": null
|
|
1143
|
+
// }
|
|
1144
|
+
// }
|
|
1145
|
+
// }
|
|
1146
|
+
//
|
|
1147
|
+
const result = {};
|
|
1148
|
+
const currencyKeys = Object.keys(currenciesData);
|
|
1149
|
+
for (let i = 0; i < currencyKeys.length; i++) {
|
|
1150
|
+
const code = currencyKeys[i];
|
|
1151
|
+
const currency = currenciesData[code];
|
|
1152
|
+
if (!currency) {
|
|
1153
|
+
// Skip invalid currency silently
|
|
1154
|
+
continue;
|
|
1155
|
+
}
|
|
1156
|
+
if (codes !== undefined && !this.inArray(code, codes)) {
|
|
1157
|
+
// Skip currency not in requested list silently
|
|
1158
|
+
continue;
|
|
1159
|
+
}
|
|
1160
|
+
// Find corresponding fee data for this currency
|
|
1161
|
+
let feeData = undefined;
|
|
1162
|
+
const feeKeys = Object.keys(feesData);
|
|
1163
|
+
for (let j = 0; j < feeKeys.length; j++) {
|
|
1164
|
+
const feeKey = feeKeys[j];
|
|
1165
|
+
const fee = feesData[feeKey];
|
|
1166
|
+
if (fee && fee['ticker'] === code) {
|
|
1167
|
+
feeData = fee;
|
|
1168
|
+
break;
|
|
1169
|
+
}
|
|
1170
|
+
}
|
|
1171
|
+
// Build comprehensive funding limits
|
|
1172
|
+
const limits = {
|
|
1173
|
+
'deposit': {
|
|
1174
|
+
'min': currency['limits']['deposit']['min'],
|
|
1175
|
+
'max': currency['limits']['deposit']['max'],
|
|
1176
|
+
},
|
|
1177
|
+
'withdraw': {
|
|
1178
|
+
'min': currency['limits']['withdraw']['min'],
|
|
1179
|
+
'max': currency['limits']['withdraw']['max'],
|
|
1180
|
+
},
|
|
1181
|
+
};
|
|
1182
|
+
// Add fee information if available
|
|
1183
|
+
if (feeData) {
|
|
1184
|
+
const depositFee = feeData['deposit'];
|
|
1185
|
+
const withdrawFee = feeData['withdraw'];
|
|
1186
|
+
if (depositFee) {
|
|
1187
|
+
const depositFeeData = {
|
|
1188
|
+
'fixed': this.safeNumber(depositFee, 'fixed'),
|
|
1189
|
+
};
|
|
1190
|
+
if (depositFee['flex']) {
|
|
1191
|
+
depositFeeData['flex'] = {
|
|
1192
|
+
'min': this.safeNumber(depositFee['flex'], 'min_fee'),
|
|
1193
|
+
'max': this.safeNumber(depositFee['flex'], 'max_fee'),
|
|
1194
|
+
'percent': this.safeNumber(depositFee['flex'], 'percent'),
|
|
1195
|
+
};
|
|
1196
|
+
}
|
|
1197
|
+
limits['deposit']['fee'] = depositFeeData;
|
|
1198
|
+
}
|
|
1199
|
+
if (withdrawFee) {
|
|
1200
|
+
const withdrawFeeData = {
|
|
1201
|
+
'fixed': this.safeNumber(withdrawFee, 'fixed'),
|
|
1202
|
+
};
|
|
1203
|
+
if (withdrawFee['flex']) {
|
|
1204
|
+
withdrawFeeData['flex'] = {
|
|
1205
|
+
'min': this.safeNumber(withdrawFee['flex'], 'min_fee'),
|
|
1206
|
+
'max': this.safeNumber(withdrawFee['flex'], 'max_fee'),
|
|
1207
|
+
'percent': this.safeNumber(withdrawFee['flex'], 'percent'),
|
|
1208
|
+
};
|
|
1209
|
+
}
|
|
1210
|
+
limits['withdraw']['fee'] = withdrawFeeData;
|
|
1211
|
+
}
|
|
1212
|
+
}
|
|
1213
|
+
// Add network-specific limits if available
|
|
1214
|
+
if (currency['networks']) {
|
|
1215
|
+
limits['networks'] = currency['networks'];
|
|
1216
|
+
}
|
|
1217
|
+
result[code] = {
|
|
1218
|
+
'info': currency,
|
|
1219
|
+
'limits': limits,
|
|
1220
|
+
};
|
|
1221
|
+
}
|
|
1222
|
+
return result;
|
|
1223
|
+
}
|
|
935
1224
|
/**
|
|
936
1225
|
* @method
|
|
937
1226
|
* @name whitebit#fetchTicker
|
|
@@ -1049,6 +1338,81 @@ class whitebit extends whitebit$1["default"] {
|
|
|
1049
1338
|
'info': ticker,
|
|
1050
1339
|
}, market);
|
|
1051
1340
|
}
|
|
1341
|
+
/**
|
|
1342
|
+
* @method
|
|
1343
|
+
* @name whitebit#fetchOrder
|
|
1344
|
+
* @description fetches information on an order by the id
|
|
1345
|
+
* @see https://docs.whitebit.com/private/http-trade-v4/#query-unexecutedactive-orders
|
|
1346
|
+
* @see https://docs.whitebit.com/private/http-trade-v4/#query-executed-orders
|
|
1347
|
+
* @param {string} id order id
|
|
1348
|
+
* @param {string} symbol unified symbol of the market the order was made in
|
|
1349
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1350
|
+
* @param {boolean} [params.checkActive] whether to check active orders (default: true)
|
|
1351
|
+
* @param {boolean} [params.checkExecuted] whether to check executed orders (default: true)
|
|
1352
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1353
|
+
*/
|
|
1354
|
+
async fetchOrder(id, symbol = undefined, params = {}) {
|
|
1355
|
+
await this.loadMarkets();
|
|
1356
|
+
// Extract control parameters from params
|
|
1357
|
+
const checkActive = this.safeBool(params, 'checkActive', true);
|
|
1358
|
+
const checkExecuted = this.safeBool(params, 'checkExecuted', true);
|
|
1359
|
+
const request = {
|
|
1360
|
+
'orderId': id,
|
|
1361
|
+
};
|
|
1362
|
+
let market = undefined;
|
|
1363
|
+
if (symbol !== undefined) {
|
|
1364
|
+
market = this.market(symbol);
|
|
1365
|
+
request['market'] = market['id'];
|
|
1366
|
+
}
|
|
1367
|
+
// Try active orders first (if enabled)
|
|
1368
|
+
if (checkActive) {
|
|
1369
|
+
try {
|
|
1370
|
+
const response = await this.v4PrivatePostOrders(this.extend(request, params));
|
|
1371
|
+
// Search for order in active orders response (array format)
|
|
1372
|
+
for (let i = 0; i < response.length; i++) {
|
|
1373
|
+
const order = response[i];
|
|
1374
|
+
const orderId = this.safeString(order, 'orderId');
|
|
1375
|
+
if (orderId === id) {
|
|
1376
|
+
const marketId = this.safeString(order, 'market');
|
|
1377
|
+
const marketNew = this.safeMarket(marketId, undefined, '_');
|
|
1378
|
+
return this.parseOrder(order, marketNew);
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1381
|
+
}
|
|
1382
|
+
catch (error) {
|
|
1383
|
+
if (!(error instanceof errors.OrderNotFound)) {
|
|
1384
|
+
throw error;
|
|
1385
|
+
}
|
|
1386
|
+
}
|
|
1387
|
+
}
|
|
1388
|
+
// Try executed orders (if enabled)
|
|
1389
|
+
if (checkExecuted) {
|
|
1390
|
+
try {
|
|
1391
|
+
const response = await this.v4PrivatePostTradeAccountOrderHistory(this.extend(request, params));
|
|
1392
|
+
// Search for order in executed orders response (object format)
|
|
1393
|
+
const marketIds = Object.keys(response);
|
|
1394
|
+
for (let i = 0; i < marketIds.length; i++) {
|
|
1395
|
+
const marketId = marketIds[i];
|
|
1396
|
+
const marketNew = this.safeMarket(marketId, undefined, '_');
|
|
1397
|
+
const orders = response[marketId];
|
|
1398
|
+
for (let j = 0; j < orders.length; j++) {
|
|
1399
|
+
const order = orders[j];
|
|
1400
|
+
const orderId = this.safeString(order, 'id');
|
|
1401
|
+
if (orderId === id) {
|
|
1402
|
+
return this.parseOrder(order, marketNew);
|
|
1403
|
+
}
|
|
1404
|
+
}
|
|
1405
|
+
}
|
|
1406
|
+
}
|
|
1407
|
+
catch (error) {
|
|
1408
|
+
if (!(error instanceof errors.OrderNotFound)) {
|
|
1409
|
+
throw error;
|
|
1410
|
+
}
|
|
1411
|
+
}
|
|
1412
|
+
}
|
|
1413
|
+
// If both checks failed or were disabled, throw OrderNotFound
|
|
1414
|
+
throw new errors.OrderNotFound(this.id + ' fetchOrder() order not found: ' + id);
|
|
1415
|
+
}
|
|
1052
1416
|
/**
|
|
1053
1417
|
* @method
|
|
1054
1418
|
* @name whitebit#fetchTickers
|
|
@@ -1591,52 +1955,55 @@ class whitebit extends whitebit$1["default"] {
|
|
|
1591
1955
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1592
1956
|
*/
|
|
1593
1957
|
async editOrder(id, symbol, type, side, amount = undefined, price = undefined, params = {}) {
|
|
1594
|
-
if (id === undefined) {
|
|
1595
|
-
throw new errors.ArgumentsRequired(this.id + ' editOrder() requires a id argument');
|
|
1596
|
-
}
|
|
1597
|
-
if (symbol === undefined) {
|
|
1598
|
-
throw new errors.ArgumentsRequired(this.id + ' editOrder() requires a symbol argument');
|
|
1599
|
-
}
|
|
1600
1958
|
await this.loadMarkets();
|
|
1601
1959
|
const market = this.market(symbol);
|
|
1602
1960
|
const request = {
|
|
1603
|
-
'orderId': id,
|
|
1604
1961
|
'market': market['id'],
|
|
1605
1962
|
};
|
|
1606
|
-
|
|
1963
|
+
// Handle clientOrderId vs orderId (clientOrderId takes priority)
|
|
1964
|
+
const clientOrderId = this.safeString(params, 'clientOrderId');
|
|
1607
1965
|
if (clientOrderId !== undefined) {
|
|
1608
|
-
// Update clientOrderId of the order
|
|
1609
1966
|
request['clientOrderId'] = clientOrderId;
|
|
1610
1967
|
}
|
|
1611
|
-
|
|
1612
|
-
|
|
1968
|
+
else {
|
|
1969
|
+
request['orderId'] = id;
|
|
1970
|
+
}
|
|
1971
|
+
// Handle amount vs total parameter based on order type and side
|
|
1972
|
+
const triggerPrice = this.safeNumberN(params, ['triggerPrice', 'stopPrice', 'activationPrice']);
|
|
1613
1973
|
const isStopOrder = (triggerPrice !== undefined);
|
|
1614
|
-
|
|
1974
|
+
// Handle activation price for stop orders
|
|
1615
1975
|
if (isStopOrder) {
|
|
1616
1976
|
request['activation_price'] = this.priceToPrecision(symbol, triggerPrice);
|
|
1977
|
+
}
|
|
1978
|
+
const isLimitOrder = type === 'limit';
|
|
1979
|
+
const total = this.safeNumber(params, 'total');
|
|
1980
|
+
if (total !== undefined) {
|
|
1981
|
+
request['total'] = this.amountToPrecision(symbol, total);
|
|
1982
|
+
}
|
|
1983
|
+
else if (amount !== undefined) {
|
|
1617
1984
|
if (isLimitOrder) {
|
|
1618
|
-
//
|
|
1985
|
+
// Limit orders always use amount parameter
|
|
1619
1986
|
request['amount'] = this.amountToPrecision(symbol, amount);
|
|
1620
|
-
|
|
1987
|
+
}
|
|
1988
|
+
else if (type === 'market' && side === 'buy') {
|
|
1989
|
+
// Market buy orders use total parameter
|
|
1990
|
+
request['total'] = this.amountToPrecision(symbol, amount);
|
|
1621
1991
|
}
|
|
1622
1992
|
else {
|
|
1623
|
-
//
|
|
1624
|
-
|
|
1625
|
-
// Use total parameter instead of amount for modify buy stop market order
|
|
1626
|
-
request['total'] = this.amountToPrecision(symbol, amount);
|
|
1627
|
-
}
|
|
1628
|
-
else {
|
|
1629
|
-
request['amount'] = this.amountToPrecision(symbol, amount);
|
|
1630
|
-
}
|
|
1993
|
+
// Market sell orders use amount parameter
|
|
1994
|
+
request['amount'] = this.amountToPrecision(symbol, amount);
|
|
1631
1995
|
}
|
|
1632
1996
|
}
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1997
|
+
// Handle price parameter for limit orders
|
|
1998
|
+
if (price !== undefined) {
|
|
1999
|
+
request['price'] = this.priceToPrecision(symbol, price);
|
|
2000
|
+
}
|
|
2001
|
+
// Ensure at least one modifiable parameter is provided
|
|
2002
|
+
const hasModifiableParam = (amount !== undefined) || (price !== undefined) || (triggerPrice !== undefined) || (total !== undefined);
|
|
2003
|
+
if (!hasModifiableParam) {
|
|
2004
|
+
throw new errors.ArgumentsRequired(this.id + ' editOrder() requires at least one of: amount, price, activationPrice, or total parameters');
|
|
1639
2005
|
}
|
|
2006
|
+
params = this.omit(params, ['clientOrderId', 'triggerPrice', 'stopPrice', 'activationPrice', 'total']);
|
|
1640
2007
|
const response = await this.v4PrivatePostOrderModify(this.extend(request, params));
|
|
1641
2008
|
return this.parseOrder(response);
|
|
1642
2009
|
}
|
|
@@ -1727,6 +2094,34 @@ class whitebit extends whitebit$1["default"] {
|
|
|
1727
2094
|
//
|
|
1728
2095
|
return this.parseOrders(response, market);
|
|
1729
2096
|
}
|
|
2097
|
+
/**
|
|
2098
|
+
* @method
|
|
2099
|
+
* @name whitebit#fetchOrders
|
|
2100
|
+
* @description fetches information on multiple orders made by the user (combines open and closed orders)
|
|
2101
|
+
* @see https://docs.whitebit.com/private/http-trade-v4/#query-unexecutedactive-orders
|
|
2102
|
+
* @see https://docs.whitebit.com/private/http-trade-v4/#query-executed-orders
|
|
2103
|
+
* @param {string} symbol unified market symbol of the market orders were made in
|
|
2104
|
+
* @param {int} [since] the earliest time in ms to fetch orders for
|
|
2105
|
+
* @param {int} [limit] the maximum number of order structures to retrieve
|
|
2106
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2107
|
+
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
2108
|
+
*/
|
|
2109
|
+
async fetchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
2110
|
+
await this.loadMarkets();
|
|
2111
|
+
// Fetch both open and closed orders in parallel
|
|
2112
|
+
const [openOrders, closedOrders] = await Promise.all([
|
|
2113
|
+
this.fetchOpenOrders(symbol, since, limit, params),
|
|
2114
|
+
this.fetchClosedOrders(symbol, since, limit, params),
|
|
2115
|
+
]);
|
|
2116
|
+
const allOrders = this.arrayConcat(openOrders, closedOrders);
|
|
2117
|
+
// Sort by timestamp (most recent first)
|
|
2118
|
+
const sortedOrders = this.sortBy(allOrders, 'timestamp', true);
|
|
2119
|
+
// Apply limit if specified (since and symbol filtering already handled by individual methods)
|
|
2120
|
+
if (limit !== undefined && sortedOrders.length > limit) {
|
|
2121
|
+
return sortedOrders.slice(0, limit);
|
|
2122
|
+
}
|
|
2123
|
+
return sortedOrders;
|
|
2124
|
+
}
|
|
1730
2125
|
/**
|
|
1731
2126
|
* @method
|
|
1732
2127
|
* @name whitebit#cancelAllOrdersAfter
|
|
@@ -2101,6 +2496,109 @@ class whitebit extends whitebit$1["default"] {
|
|
|
2101
2496
|
const data = this.safeList(response, 'records', []);
|
|
2102
2497
|
return this.parseTrades(data, market);
|
|
2103
2498
|
}
|
|
2499
|
+
/**
|
|
2500
|
+
* @method
|
|
2501
|
+
* @name whitebit#fetchWithdrawals
|
|
2502
|
+
* @description fetch all withdrawals made from an account
|
|
2503
|
+
* @see https://docs.whitebit.com/private/http-main-v4/#get-depositwithdraw-history
|
|
2504
|
+
* @param {string} code unified currency code
|
|
2505
|
+
* @param {int} [since] the earliest time in ms to fetch withdrawals for
|
|
2506
|
+
* @param {int} [limit] the maximum number of withdrawals structures to retrieve
|
|
2507
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2508
|
+
* @param {string} [params.transactionMethod] transaction method (1=deposit, 2=withdrawal) - automatically set to '2' for withdrawals
|
|
2509
|
+
* @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
|
|
2510
|
+
*/
|
|
2511
|
+
async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
|
|
2512
|
+
await this.loadMarkets();
|
|
2513
|
+
let currency = undefined;
|
|
2514
|
+
const request = {};
|
|
2515
|
+
if (code !== undefined) {
|
|
2516
|
+
currency = this.currency(code);
|
|
2517
|
+
request['ticker'] = currency['id'];
|
|
2518
|
+
}
|
|
2519
|
+
if (since !== undefined) {
|
|
2520
|
+
request['startDate'] = this.parseToInt(since / 1000);
|
|
2521
|
+
}
|
|
2522
|
+
if (limit === undefined || limit > 100) {
|
|
2523
|
+
limit = 100;
|
|
2524
|
+
}
|
|
2525
|
+
if (limit !== undefined) {
|
|
2526
|
+
request['limit'] = limit;
|
|
2527
|
+
}
|
|
2528
|
+
// Use transactionMethod parameter to filter withdrawals server-side (method = 2)
|
|
2529
|
+
request['transactionMethod'] = '2';
|
|
2530
|
+
const response = await this.v4PrivatePostMainAccountHistory(this.extend(request, params));
|
|
2531
|
+
//
|
|
2532
|
+
// [
|
|
2533
|
+
// {
|
|
2534
|
+
// "id": 123456789, // Transaction ID
|
|
2535
|
+
// "method": "2", // Method: 1=deposit, 2=withdrawal (filtered server-side)
|
|
2536
|
+
// "ticker": "BTC", // Currency ticker
|
|
2537
|
+
// "amount": "0.001", // Transaction amount
|
|
2538
|
+
// "address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa", // Withdrawal address
|
|
2539
|
+
// "memo": "", // Memo/tag (if required)
|
|
2540
|
+
// "network": "BTC", // Network name
|
|
2541
|
+
// "fee": "0.0005", // Transaction fee
|
|
2542
|
+
// "status": "1", // Status: 0=pending, 1=completed, 2=failed
|
|
2543
|
+
// "timestamp": 1641051917, // Transaction timestamp
|
|
2544
|
+
// "txid": "abc123def456..." // Transaction hash
|
|
2545
|
+
// },
|
|
2546
|
+
// { ... } // More withdrawal transactions
|
|
2547
|
+
// ]
|
|
2548
|
+
//
|
|
2549
|
+
return this.parseTransactions(response, currency, since, limit);
|
|
2550
|
+
}
|
|
2551
|
+
/**
|
|
2552
|
+
* @method
|
|
2553
|
+
* @name whitebit#fetchTransactions
|
|
2554
|
+
* @description fetch history of deposits and withdrawals
|
|
2555
|
+
* @see https://docs.whitebit.com/private/http-main-v4/#get-depositwithdraw-history
|
|
2556
|
+
* @param {string} [code] unified currency code
|
|
2557
|
+
* @param {int} [since] the earliest time in ms to fetch transactions for
|
|
2558
|
+
* @param {int} [limit] the maximum number of transactions structures to retrieve
|
|
2559
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2560
|
+
* @param {string} [params.transactionMethod] transaction method (1=deposit, 2=withdrawal) - automatically set to '1' for deposits
|
|
2561
|
+
* @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
|
|
2562
|
+
*/
|
|
2563
|
+
async fetchTransactions(code = undefined, since = undefined, limit = undefined, params = {}) {
|
|
2564
|
+
await this.loadMarkets();
|
|
2565
|
+
let currency = undefined;
|
|
2566
|
+
const request = {};
|
|
2567
|
+
if (code !== undefined) {
|
|
2568
|
+
currency = this.currency(code);
|
|
2569
|
+
request['ticker'] = currency['id'];
|
|
2570
|
+
}
|
|
2571
|
+
if (since !== undefined) {
|
|
2572
|
+
request['startDate'] = this.parseToInt(since / 1000);
|
|
2573
|
+
}
|
|
2574
|
+
if (limit === undefined || limit > 100) {
|
|
2575
|
+
limit = 100;
|
|
2576
|
+
}
|
|
2577
|
+
if (limit !== undefined) {
|
|
2578
|
+
request['limit'] = limit;
|
|
2579
|
+
}
|
|
2580
|
+
// Do not filter by transactionMethod to get all transactions (deposits and withdrawals)
|
|
2581
|
+
const response = await this.v4PrivatePostMainAccountHistory(this.extend(request, params));
|
|
2582
|
+
//
|
|
2583
|
+
// [
|
|
2584
|
+
// {
|
|
2585
|
+
// "id": 123456789, // Transaction ID
|
|
2586
|
+
// "method": "1", // Method: 1=deposit, 2=withdrawal
|
|
2587
|
+
// "ticker": "BTC", // Currency ticker
|
|
2588
|
+
// "amount": "0.001", // Transaction amount
|
|
2589
|
+
// "address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa", // Transaction address
|
|
2590
|
+
// "memo": "", // Memo/tag (if required)
|
|
2591
|
+
// "network": "BTC", // Network name
|
|
2592
|
+
// "fee": "0.0005", // Transaction fee
|
|
2593
|
+
// "status": "1", // Status: 0=pending, 1=completed, 2=failed
|
|
2594
|
+
// "timestamp": 1641051917, // Transaction timestamp
|
|
2595
|
+
// "txid": "abc123def456..." // Transaction hash
|
|
2596
|
+
// },
|
|
2597
|
+
// { ... } // More transactions (deposits and withdrawals)
|
|
2598
|
+
// ]
|
|
2599
|
+
//
|
|
2600
|
+
return this.parseTransactions(response, currency, since, limit);
|
|
2601
|
+
}
|
|
2104
2602
|
/**
|
|
2105
2603
|
* @method
|
|
2106
2604
|
* @name whitebit#fetchDepositAddress
|
|
@@ -2231,6 +2729,47 @@ class whitebit extends whitebit$1["default"] {
|
|
|
2231
2729
|
'tag': this.safeString(depositAddress, 'memo'),
|
|
2232
2730
|
};
|
|
2233
2731
|
}
|
|
2732
|
+
/**
|
|
2733
|
+
* @method
|
|
2734
|
+
* @name whitebit#fetchAccounts
|
|
2735
|
+
* @description fetch all the accounts associated with a profile
|
|
2736
|
+
* @see https://docs.whitebit.com/private/http-main-v4/#sub-account-list
|
|
2737
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2738
|
+
* @returns {object[]} a list of [account structures]{@link https://docs.ccxt.com/#/?id=account-structure}
|
|
2739
|
+
*/
|
|
2740
|
+
async fetchAccounts(params = {}) {
|
|
2741
|
+
await this.loadMarkets();
|
|
2742
|
+
const accounts = [];
|
|
2743
|
+
// Fetch sub-accounts
|
|
2744
|
+
//
|
|
2745
|
+
// [
|
|
2746
|
+
// {
|
|
2747
|
+
// "id": "12345",
|
|
2748
|
+
// "name": "SubAccount1",
|
|
2749
|
+
// "status": "active",
|
|
2750
|
+
// "permissions": ["trade", "withdraw"]
|
|
2751
|
+
// }
|
|
2752
|
+
// ]
|
|
2753
|
+
//
|
|
2754
|
+
const subAccounts = await this.v4PrivatePostSubAccountList(params);
|
|
2755
|
+
if (subAccounts && Array.isArray(subAccounts)) {
|
|
2756
|
+
for (let i = 0; i < subAccounts.length; i++) {
|
|
2757
|
+
const subAccount = this.safeValue(subAccounts, i);
|
|
2758
|
+
const accountId = this.safeString(subAccount, 'id');
|
|
2759
|
+
const accountName = this.safeString(subAccount, 'name');
|
|
2760
|
+
if (accountId) {
|
|
2761
|
+
accounts.push({
|
|
2762
|
+
'id': accountId,
|
|
2763
|
+
'type': 'subaccount',
|
|
2764
|
+
'name': accountName || 'SubAccount ' + accountId,
|
|
2765
|
+
'code': undefined,
|
|
2766
|
+
'info': subAccount,
|
|
2767
|
+
});
|
|
2768
|
+
}
|
|
2769
|
+
}
|
|
2770
|
+
}
|
|
2771
|
+
return accounts;
|
|
2772
|
+
}
|
|
2234
2773
|
/**
|
|
2235
2774
|
* @method
|
|
2236
2775
|
* @name whitebit#setLeverage
|
|
@@ -3366,6 +3905,10 @@ class whitebit extends whitebit$1["default"] {
|
|
|
3366
3905
|
const query = this.omit(params, this.extractParams(path));
|
|
3367
3906
|
const version = this.safeValue(api, 0);
|
|
3368
3907
|
const accessibility = this.safeValue(api, 1);
|
|
3908
|
+
if (headers === undefined) {
|
|
3909
|
+
headers = {};
|
|
3910
|
+
}
|
|
3911
|
+
headers['User-Agent'] = 'ccxt/' + this.id + '-' + this.version;
|
|
3369
3912
|
const pathWithParams = '/' + this.implodeParams(path, params);
|
|
3370
3913
|
let url = this.urls['api'][version][accessibility] + pathWithParams;
|
|
3371
3914
|
if (accessibility === 'public') {
|