ccxt 4.5.18 → 4.5.20
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 +7 -6
- package/dist/ccxt.browser.min.js +40 -16
- package/dist/cjs/_virtual/index.cjs.js +1459 -9
- package/dist/cjs/ccxt.js +8 -2
- package/dist/cjs/src/abstract/dydx.js +11 -0
- package/dist/cjs/src/base/Exchange.js +164 -10
- package/dist/cjs/src/base/ws/Client.js +3 -1
- package/dist/cjs/src/binance.js +8 -1
- package/dist/cjs/src/bingx.js +20 -0
- package/dist/cjs/src/bitget.js +43 -41
- package/dist/cjs/src/bybit.js +21 -23
- package/dist/cjs/src/deribit.js +6 -0
- package/dist/cjs/src/dydx.js +2454 -0
- package/dist/cjs/src/gate.js +4 -4
- package/dist/cjs/src/hibachi.js +1 -1
- package/dist/cjs/src/hyperliquid.js +207 -9
- package/dist/cjs/src/kucoin.js +711 -109
- package/dist/cjs/src/mexc.js +2 -3
- package/dist/cjs/src/pro/binance.js +59 -144
- package/dist/cjs/src/pro/dydx.js +418 -0
- package/dist/cjs/src/pro/kraken.js +4 -3
- package/dist/cjs/src/pro/xt.js +218 -4
- package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +1 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +56 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +56 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +48 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +343 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +717 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +60 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +45 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +380 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +72 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +211 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +195 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +49 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +57 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +56 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/helpers.js +79 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/long/index.cjs.js +9 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/onboarding.js +59 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/registry.js +39 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/pbkdf2.js +69 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/ripemd160.js +108 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +50 -1
- package/dist/cjs/src/static_dependencies/scure-base/index.js +29 -0
- package/dist/cjs/src/static_dependencies/scure-bip32/index.js +278 -0
- package/dist/cjs/src/static_dependencies/scure-bip39/index.js +97 -0
- package/dist/cjs/src/static_dependencies/scure-bip39/wordlists/english.js +2060 -0
- package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +2 -0
- package/dist/cjs/src/toobit.js +2 -1
- package/js/ccxt.d.ts +8 -2
- package/js/ccxt.js +6 -2
- package/js/src/abstract/binance.d.ts +7 -0
- package/js/src/abstract/binancecoinm.d.ts +7 -0
- package/js/src/abstract/binanceus.d.ts +7 -0
- package/js/src/abstract/binanceusdm.d.ts +7 -0
- package/js/src/abstract/bitget.d.ts +1 -0
- package/js/src/abstract/dydx.d.ts +61 -0
- package/js/src/abstract/dydx.js +11 -0
- package/js/src/abstract/kucoin.d.ts +1 -1
- package/js/src/abstract/kucoinfutures.d.ts +1 -1
- package/js/src/base/Exchange.d.ts +7 -0
- package/js/src/base/Exchange.js +163 -10
- package/js/src/base/ws/Client.js +3 -1
- package/js/src/binance.js +8 -1
- package/js/src/bingx.js +20 -0
- package/js/src/bitget.d.ts +3 -3
- package/js/src/bitget.js +43 -41
- package/js/src/bybit.d.ts +3 -3
- package/js/src/bybit.js +21 -23
- package/js/src/deribit.js +6 -0
- package/js/src/dydx.d.ts +364 -0
- package/js/src/dydx.js +2453 -0
- package/js/src/gate.d.ts +2 -2
- package/js/src/gate.js +4 -4
- package/js/src/hibachi.js +1 -1
- package/js/src/hyperliquid.d.ts +17 -0
- package/js/src/hyperliquid.js +207 -9
- package/js/src/kucoin.d.ts +48 -1
- package/js/src/kucoin.js +711 -109
- package/js/src/mexc.js +2 -3
- package/js/src/pro/binance.d.ts +2 -2
- package/js/src/pro/binance.js +59 -144
- package/js/src/pro/dydx.d.ts +81 -0
- package/js/src/pro/dydx.js +417 -0
- package/js/src/pro/kraken.js +4 -3
- package/js/src/pro/xt.d.ts +85 -2
- package/js/src/pro/xt.js +218 -4
- package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.d.ts +90 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +163 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.d.ts +26 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.js +51 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.d.ts +48 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +85 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.d.ts +40 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +77 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.d.ts +162 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +329 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.d.ts +460 -0
- package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +698 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.d.ts +127 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +286 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.d.ts +66 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.js +109 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.d.ts +127 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +257 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.d.ts +48 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.js +93 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.d.ts +23 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.js +43 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.d.ts +92 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.js +164 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.d.ts +124 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.js +196 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.d.ts +159 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.js +324 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.d.ts +546 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +872 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.d.ts +84 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +181 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.d.ts +397 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +757 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.d.ts +120 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +246 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.d.ts +79 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +147 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.d.ts +32 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.js +59 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.d.ts +34 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.js +66 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.d.ts +62 -0
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +111 -0
- package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.d.ts +207 -0
- package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +50 -0
- package/js/src/static_dependencies/dydx-v4-client/helpers.d.ts +82 -0
- package/js/src/static_dependencies/dydx-v4-client/helpers.js +172 -0
- package/js/src/static_dependencies/dydx-v4-client/long/index.cjs +1473 -0
- package/js/src/static_dependencies/dydx-v4-client/long/index.d.cts +2 -0
- package/js/src/static_dependencies/dydx-v4-client/onboarding.d.ts +35 -0
- package/js/src/static_dependencies/dydx-v4-client/onboarding.js +56 -0
- package/js/src/static_dependencies/dydx-v4-client/registry.d.ts +7 -0
- package/js/src/static_dependencies/dydx-v4-client/registry.js +36 -0
- package/js/src/static_dependencies/noble-hashes/utils.d.ts +1 -0
- package/js/src/static_dependencies/noble-hashes/utils.js +4 -0
- package/js/src/static_dependencies/scure-bip32/index.d.ts +49 -0
- package/js/src/static_dependencies/scure-bip32/index.js +295 -0
- package/js/src/static_dependencies/scure-bip39/index.d.ts +54 -0
- package/js/src/static_dependencies/scure-bip39/index.js +140 -0
- package/js/src/static_dependencies/scure-bip39/wordlists/english.d.ts +1 -0
- package/js/src/static_dependencies/scure-bip39/wordlists/english.js +2054 -0
- package/js/src/toobit.js +2 -1
- package/package.json +9 -3
package/dist/cjs/src/pro/xt.js
CHANGED
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var xt$1 = require('../xt.js');
|
|
6
6
|
var Cache = require('../base/ws/Cache.js');
|
|
7
|
+
var errors = require('../base/errors.js');
|
|
7
8
|
|
|
8
9
|
// ----------------------------------------------------------------------------
|
|
9
10
|
// ---------------------------------------------------------------------------
|
|
@@ -13,10 +14,15 @@ class xt extends xt$1["default"] {
|
|
|
13
14
|
'has': {
|
|
14
15
|
'ws': true,
|
|
15
16
|
'watchOHLCV': true,
|
|
17
|
+
'unWatchOHLCV': true,
|
|
16
18
|
'watchOrderBook': true,
|
|
19
|
+
'unWatchOrderBook': true,
|
|
17
20
|
'watchTicker': true,
|
|
21
|
+
'unWatchTicker': true,
|
|
18
22
|
'watchTickers': true,
|
|
23
|
+
'unWatchTickers': true,
|
|
19
24
|
'watchTrades': true,
|
|
25
|
+
'unWatchTrades': true,
|
|
20
26
|
'watchTradesForSymbols': false,
|
|
21
27
|
'watchBalance': true,
|
|
22
28
|
'watchOrders': true,
|
|
@@ -161,9 +167,10 @@ class xt extends xt$1["default"] {
|
|
|
161
167
|
let type = undefined;
|
|
162
168
|
[type, params] = this.handleMarketTypeAndParams(methodName, market, params);
|
|
163
169
|
const isContract = (type !== 'spot');
|
|
170
|
+
const id = this.numberToString(this.milliseconds()) + name; // call back ID
|
|
164
171
|
const subscribe = {
|
|
165
172
|
'method': isContract ? 'SUBSCRIBE' : 'subscribe',
|
|
166
|
-
'id':
|
|
173
|
+
'id': id,
|
|
167
174
|
};
|
|
168
175
|
if (privateAccess) {
|
|
169
176
|
if (!isContract) {
|
|
@@ -189,8 +196,73 @@ class xt extends xt$1["default"] {
|
|
|
189
196
|
if (isContract) {
|
|
190
197
|
tail = privateAccess ? 'user' : 'market';
|
|
191
198
|
}
|
|
199
|
+
const subscription = {
|
|
200
|
+
'id': id,
|
|
201
|
+
};
|
|
202
|
+
const url = this.urls['api']['ws'][tradeType] + '/' + tail;
|
|
203
|
+
return await this.watch(url, messageHash, request, messageHash, subscription);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* @ignore
|
|
207
|
+
* @method
|
|
208
|
+
* @description Connects to a websocket channel
|
|
209
|
+
* @see https://doc.xt.com/#websocket_privaterequestFormat
|
|
210
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2base
|
|
211
|
+
* @param {string} messageHash the message hash of the subscription
|
|
212
|
+
* @param {string} name name of the channel
|
|
213
|
+
* @param {string} access public or private
|
|
214
|
+
* @param {string} methodName the name of the CCXT class method
|
|
215
|
+
* @param {string} topic topic of the subscription
|
|
216
|
+
* @param {object} [market] CCXT market
|
|
217
|
+
* @param {string[]} [symbols] unified market symbols
|
|
218
|
+
* @param {object} params extra parameters specific to the xt api
|
|
219
|
+
* @param {object} subscriptionParams extra parameters specific to the subscription
|
|
220
|
+
* @returns {object} data from the websocket stream
|
|
221
|
+
*/
|
|
222
|
+
async unSubscribe(messageHash, name, access, methodName, topic, market = undefined, symbols = undefined, params = {}, subscriptionParams = {}) {
|
|
223
|
+
const privateAccess = access === 'private';
|
|
224
|
+
let type = undefined;
|
|
225
|
+
[type, params] = this.handleMarketTypeAndParams(methodName, market, params);
|
|
226
|
+
const isContract = (type !== 'spot');
|
|
227
|
+
const id = this.numberToString(this.milliseconds()) + name; // call back ID
|
|
228
|
+
const unsubscribe = {
|
|
229
|
+
'method': isContract ? 'UNSUBSCRIBE' : 'unsubscribe',
|
|
230
|
+
'id': id,
|
|
231
|
+
};
|
|
232
|
+
if (privateAccess) {
|
|
233
|
+
if (!isContract) {
|
|
234
|
+
unsubscribe['params'] = [name];
|
|
235
|
+
unsubscribe['listenKey'] = await this.getListenKey(isContract);
|
|
236
|
+
}
|
|
237
|
+
else {
|
|
238
|
+
const listenKey = await this.getListenKey(isContract);
|
|
239
|
+
const param = name + '@' + listenKey;
|
|
240
|
+
unsubscribe['params'] = [param];
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
else {
|
|
244
|
+
unsubscribe['params'] = [name];
|
|
245
|
+
}
|
|
246
|
+
const tradeType = isContract ? 'contract' : 'spot';
|
|
247
|
+
let subMessageHash = name + '::' + tradeType;
|
|
248
|
+
if (symbols !== undefined) {
|
|
249
|
+
subMessageHash = subMessageHash + '::' + symbols.join(',');
|
|
250
|
+
}
|
|
251
|
+
const request = this.extend(unsubscribe, params);
|
|
252
|
+
let tail = access;
|
|
253
|
+
if (isContract) {
|
|
254
|
+
tail = privateAccess ? 'user' : 'market';
|
|
255
|
+
}
|
|
192
256
|
const url = this.urls['api']['ws'][tradeType] + '/' + tail;
|
|
193
|
-
|
|
257
|
+
const subscription = {
|
|
258
|
+
'unsubscribe': true,
|
|
259
|
+
'id': id,
|
|
260
|
+
'subMessageHashes': [subMessageHash],
|
|
261
|
+
'messageHashes': [messageHash],
|
|
262
|
+
'symbols': symbols,
|
|
263
|
+
'topic': topic,
|
|
264
|
+
};
|
|
265
|
+
return await this.watch(url, messageHash, this.extend(request, params), messageHash, this.extend(subscription, subscriptionParams));
|
|
194
266
|
}
|
|
195
267
|
/**
|
|
196
268
|
* @method
|
|
@@ -215,7 +287,29 @@ class xt extends xt$1["default"] {
|
|
|
215
287
|
}
|
|
216
288
|
/**
|
|
217
289
|
* @method
|
|
218
|
-
* @name xt#
|
|
290
|
+
* @name xt#unWatchTicker
|
|
291
|
+
* @description stops watching a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
292
|
+
* @see https://doc.xt.com/#websocket_publictickerRealTime
|
|
293
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2tickerRealTime
|
|
294
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2aggTickerRealTime
|
|
295
|
+
* @param {string} symbol unified symbol of the market to fetch the ticker for
|
|
296
|
+
* @param {object} params extra parameters specific to the xt api endpoint
|
|
297
|
+
* @param {string} [params.method] 'agg_ticker' (contract only) or 'ticker', default = 'ticker' - the endpoint that will be streamed
|
|
298
|
+
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/en/latest/manual.html#ticker-structure}
|
|
299
|
+
*/
|
|
300
|
+
async unWatchTicker(symbol, params = {}) {
|
|
301
|
+
await this.loadMarkets();
|
|
302
|
+
const market = this.market(symbol);
|
|
303
|
+
const options = this.safeDict(this.options, 'unWatchTicker');
|
|
304
|
+
const defaultMethod = this.safeString(options, 'method', 'ticker');
|
|
305
|
+
const method = this.safeString(params, 'method', defaultMethod);
|
|
306
|
+
const name = method + '@' + market['id'];
|
|
307
|
+
const messageHash = 'unsubscribe::' + name;
|
|
308
|
+
return await this.unSubscribe(messageHash, name, 'public', 'unWatchTicker', defaultMethod, market, undefined, params);
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* @method
|
|
312
|
+
* @name xt#watchTickers
|
|
219
313
|
* @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
220
314
|
* @see https://doc.xt.com/#websocket_publicallTicker
|
|
221
315
|
* @see https://doc.xt.com/#futures_market_websocket_v2allTicker
|
|
@@ -230,6 +324,7 @@ class xt extends xt$1["default"] {
|
|
|
230
324
|
const options = this.safeDict(this.options, 'watchTickers');
|
|
231
325
|
const defaultMethod = this.safeString(options, 'method', 'tickers');
|
|
232
326
|
const name = this.safeString(params, 'method', defaultMethod);
|
|
327
|
+
symbols = this.marketSymbols(symbols);
|
|
233
328
|
let market = undefined;
|
|
234
329
|
if (symbols !== undefined) {
|
|
235
330
|
market = this.market(symbols[0]);
|
|
@@ -242,7 +337,34 @@ class xt extends xt$1["default"] {
|
|
|
242
337
|
}
|
|
243
338
|
/**
|
|
244
339
|
* @method
|
|
245
|
-
* @name
|
|
340
|
+
* @name xt#unWatchTickers
|
|
341
|
+
* @description stops watching a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
342
|
+
* @see https://doc.xt.com/#websocket_publicallTicker
|
|
343
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2allTicker
|
|
344
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2allAggTicker
|
|
345
|
+
* @param {string} [symbols] unified market symbols
|
|
346
|
+
* @param {object} params extra parameters specific to the xt api endpoint
|
|
347
|
+
* @param {string} [params.method] 'agg_tickers' (contract only) or 'tickers', default = 'tickers' - the endpoint that will be streamed
|
|
348
|
+
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/en/latest/manual.html#ticker-structure}
|
|
349
|
+
*/
|
|
350
|
+
async unWatchTickers(symbols = undefined, params = {}) {
|
|
351
|
+
await this.loadMarkets();
|
|
352
|
+
const options = this.safeDict(this.options, 'unWatchTickers');
|
|
353
|
+
const defaultMethod = this.safeString(options, 'method', 'tickers');
|
|
354
|
+
const name = this.safeString(params, 'method', defaultMethod);
|
|
355
|
+
if (symbols !== undefined) {
|
|
356
|
+
throw new errors.NotSupported(this.id + ' unWatchTickers() does not support symbols argument, unsubscribtion is for all tickers at once only');
|
|
357
|
+
}
|
|
358
|
+
const messageHash = 'unsubscribe::' + name;
|
|
359
|
+
const tickers = await this.unSubscribe(messageHash, name, 'public', 'unWatchTickers', 'ticker', undefined, symbols, params);
|
|
360
|
+
if (this.newUpdates) {
|
|
361
|
+
return tickers;
|
|
362
|
+
}
|
|
363
|
+
return this.filterByArray(this.tickers, 'symbol', symbols);
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* @method
|
|
367
|
+
* @name xt#watchOHLCV
|
|
246
368
|
* @description watches historical candlestick data containing the open, high, low, and close price, and the volume of a market
|
|
247
369
|
* @see https://doc.xt.com/#websocket_publicsymbolKline
|
|
248
370
|
* @see https://doc.xt.com/#futures_market_websocket_v2symbolKline
|
|
@@ -263,6 +385,25 @@ class xt extends xt$1["default"] {
|
|
|
263
385
|
}
|
|
264
386
|
return this.filterBySinceLimit(ohlcv, since, limit, 0, true);
|
|
265
387
|
}
|
|
388
|
+
/**
|
|
389
|
+
* @method
|
|
390
|
+
* @name xt#unWatchOHLCV
|
|
391
|
+
* @description stops watching historical candlestick data containing the open, high, low, and close price, and the volume of a market
|
|
392
|
+
* @see https://doc.xt.com/#websocket_publicsymbolKline
|
|
393
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2symbolKline
|
|
394
|
+
* @param {string} symbol unified symbol of the market to fetch OHLCV data for
|
|
395
|
+
* @param {string} timeframe 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, or 1M
|
|
396
|
+
* @param {object} params extra parameters specific to the xt api endpoint
|
|
397
|
+
* @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
|
|
398
|
+
*/
|
|
399
|
+
async unWatchOHLCV(symbol, timeframe = '1m', params = {}) {
|
|
400
|
+
await this.loadMarkets();
|
|
401
|
+
const market = this.market(symbol);
|
|
402
|
+
const name = 'kline@' + market['id'] + ',' + timeframe;
|
|
403
|
+
const messageHash = 'unsubscribe::' + name;
|
|
404
|
+
params['symbolsAndTimeframes'] = [[market['symbol'], timeframe]];
|
|
405
|
+
return await this.unSubscribe(messageHash, name, 'public', 'unWatchOHLCV', 'kline', market, undefined, params);
|
|
406
|
+
}
|
|
266
407
|
/**
|
|
267
408
|
* @method
|
|
268
409
|
* @name xt#watchTrades
|
|
@@ -285,6 +426,23 @@ class xt extends xt$1["default"] {
|
|
|
285
426
|
}
|
|
286
427
|
return this.filterBySinceLimit(trades, since, limit, 'timestamp');
|
|
287
428
|
}
|
|
429
|
+
/**
|
|
430
|
+
* @method
|
|
431
|
+
* @name xt#unWatchTrades
|
|
432
|
+
* @description stops watching the list of most recent trades for a particular symbol
|
|
433
|
+
* @see https://doc.xt.com/#websocket_publicdealRecord
|
|
434
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2dealRecord
|
|
435
|
+
* @param {string} symbol unified symbol of the market to fetch trades for
|
|
436
|
+
* @param {object} params extra parameters specific to the xt api endpoint
|
|
437
|
+
* @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/en/latest/manual.html?#public-trades}
|
|
438
|
+
*/
|
|
439
|
+
async unWatchTrades(symbol, params = {}) {
|
|
440
|
+
await this.loadMarkets();
|
|
441
|
+
const market = this.market(symbol);
|
|
442
|
+
const name = 'trade@' + market['id'];
|
|
443
|
+
const messageHash = 'unsubscribe::' + name;
|
|
444
|
+
return await this.unSubscribe(messageHash, name, 'public', 'unWatchTrades', 'trade', market, undefined, params);
|
|
445
|
+
}
|
|
288
446
|
/**
|
|
289
447
|
* @method
|
|
290
448
|
* @name xt#watchOrderBook
|
|
@@ -311,6 +469,31 @@ class xt extends xt$1["default"] {
|
|
|
311
469
|
const orderbook = await this.subscribe(name, 'public', 'watchOrderBook', market, undefined, params);
|
|
312
470
|
return orderbook.limit();
|
|
313
471
|
}
|
|
472
|
+
/**
|
|
473
|
+
* @method
|
|
474
|
+
* @name xt#unWatchOrderBook
|
|
475
|
+
* @description stops watching information on open orders with bid (buy) and ask (sell) prices, volumes and other data
|
|
476
|
+
* @see https://doc.xt.com/#websocket_publiclimitDepth
|
|
477
|
+
* @see https://doc.xt.com/#websocket_publicincreDepth
|
|
478
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2limitDepth
|
|
479
|
+
* @see https://doc.xt.com/#futures_market_websocket_v2increDepth
|
|
480
|
+
* @param {string} symbol unified symbol of the market to fetch the order book for
|
|
481
|
+
* @param {object} params extra parameters specific to the xt api endpoint
|
|
482
|
+
* @param {int} [params.levels] 5, 10, 20, or 50
|
|
483
|
+
* @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-book-structure} indexed by market symbols
|
|
484
|
+
*/
|
|
485
|
+
async unWatchOrderBook(symbol, params = {}) {
|
|
486
|
+
await this.loadMarkets();
|
|
487
|
+
const market = this.market(symbol);
|
|
488
|
+
const levels = this.safeString(params, 'levels');
|
|
489
|
+
params = this.omit(params, 'levels');
|
|
490
|
+
let name = 'depth_update@' + market['id'];
|
|
491
|
+
if (levels !== undefined) {
|
|
492
|
+
name = 'depth@' + market['id'] + ',' + levels;
|
|
493
|
+
}
|
|
494
|
+
const messageHash = 'unsubscribe::' + name;
|
|
495
|
+
return await this.unSubscribe(messageHash, name, 'public', 'unWatchOrderBook', 'depth', market, undefined, params);
|
|
496
|
+
}
|
|
314
497
|
/**
|
|
315
498
|
* @method
|
|
316
499
|
* @name xt#watchOrders
|
|
@@ -1205,11 +1388,42 @@ class xt extends xt$1["default"] {
|
|
|
1205
1388
|
method.call(this, client, message);
|
|
1206
1389
|
}
|
|
1207
1390
|
}
|
|
1391
|
+
else {
|
|
1392
|
+
this.handleSubscriptionStatus(client, message);
|
|
1393
|
+
}
|
|
1208
1394
|
}
|
|
1209
1395
|
ping(client) {
|
|
1210
1396
|
client.lastPong = this.milliseconds();
|
|
1211
1397
|
return 'ping';
|
|
1212
1398
|
}
|
|
1399
|
+
handleSubscriptionStatus(client, message) {
|
|
1400
|
+
//
|
|
1401
|
+
// {
|
|
1402
|
+
// id: '1763045665228ticker@eth_usdt',
|
|
1403
|
+
// code: 0,
|
|
1404
|
+
// msg: 'SUCCESS',
|
|
1405
|
+
// method: 'unsubscribe'
|
|
1406
|
+
// }
|
|
1407
|
+
//
|
|
1408
|
+
const method = this.safeStringLower(message, 'method');
|
|
1409
|
+
if (method === 'unsubscribe') {
|
|
1410
|
+
const id = this.safeString(message, 'id');
|
|
1411
|
+
const subscriptionsById = this.indexBy(client.subscriptions, 'id');
|
|
1412
|
+
const subscription = this.safeValue(subscriptionsById, id, {});
|
|
1413
|
+
this.handleUnSubscription(client, subscription);
|
|
1414
|
+
}
|
|
1415
|
+
return message;
|
|
1416
|
+
}
|
|
1417
|
+
handleUnSubscription(client, subscription) {
|
|
1418
|
+
const messageHashes = this.safeList(subscription, 'messageHashes', []);
|
|
1419
|
+
const subMessageHashes = this.safeList(subscription, 'subMessageHashes', []);
|
|
1420
|
+
for (let j = 0; j < messageHashes.length; j++) {
|
|
1421
|
+
const unsubHash = messageHashes[j];
|
|
1422
|
+
const subHash = subMessageHashes[j];
|
|
1423
|
+
this.cleanUnsubscription(client, subHash, unsubHash);
|
|
1424
|
+
}
|
|
1425
|
+
this.cleanCache(subscription);
|
|
1426
|
+
}
|
|
1213
1427
|
handleErrorMessage(client, message) {
|
|
1214
1428
|
//
|
|
1215
1429
|
// {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
require('../../../_virtual/_commonjsHelpers.js');
|
|
5
6
|
var require$$0 = require('protobufjs/minimal');
|
|
6
7
|
|
|
7
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _m0 = require('protobufjs/minimal.js');
|
|
6
|
+
|
|
7
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
+
|
|
9
|
+
var _m0__default = /*#__PURE__*/_interopDefaultLegacy(_m0);
|
|
10
|
+
|
|
11
|
+
// ----------------------------------------------------------------------------
|
|
12
|
+
function createBaseCoin() {
|
|
13
|
+
return {
|
|
14
|
+
denom: "",
|
|
15
|
+
amount: ""
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
const Coin = {
|
|
19
|
+
encode(message, writer = _m0__default["default"].Writer.create()) {
|
|
20
|
+
if (message.denom !== "") {
|
|
21
|
+
writer.uint32(10).string(message.denom);
|
|
22
|
+
}
|
|
23
|
+
if (message.amount !== "") {
|
|
24
|
+
writer.uint32(18).string(message.amount);
|
|
25
|
+
}
|
|
26
|
+
return writer;
|
|
27
|
+
},
|
|
28
|
+
decode(input, length) {
|
|
29
|
+
const reader = input instanceof _m0__default["default"].Reader ? input : new _m0__default["default"].Reader(input);
|
|
30
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
31
|
+
const message = createBaseCoin();
|
|
32
|
+
while (reader.pos < end) {
|
|
33
|
+
const tag = reader.uint32();
|
|
34
|
+
switch (tag >>> 3) {
|
|
35
|
+
case 1:
|
|
36
|
+
message.denom = reader.string();
|
|
37
|
+
break;
|
|
38
|
+
case 2:
|
|
39
|
+
message.amount = reader.string();
|
|
40
|
+
break;
|
|
41
|
+
default:
|
|
42
|
+
reader.skipType(tag & 7);
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return message;
|
|
47
|
+
},
|
|
48
|
+
fromPartial(object) {
|
|
49
|
+
const message = createBaseCoin();
|
|
50
|
+
message.denom = object.denom ?? "";
|
|
51
|
+
message.amount = object.amount ?? "";
|
|
52
|
+
return message;
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
exports.Coin = Coin;
|
package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _m0 = require('protobufjs/minimal.js');
|
|
6
|
+
|
|
7
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
+
|
|
9
|
+
var _m0__default = /*#__PURE__*/_interopDefaultLegacy(_m0);
|
|
10
|
+
|
|
11
|
+
// ----------------------------------------------------------------------------
|
|
12
|
+
function createBaseCompactBitArray() {
|
|
13
|
+
return {
|
|
14
|
+
extraBitsStored: 0,
|
|
15
|
+
elems: new Uint8Array()
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
const CompactBitArray = {
|
|
19
|
+
encode(message, writer = _m0__default["default"].Writer.create()) {
|
|
20
|
+
if (message.extraBitsStored !== 0) {
|
|
21
|
+
writer.uint32(8).uint32(message.extraBitsStored);
|
|
22
|
+
}
|
|
23
|
+
if (message.elems.length !== 0) {
|
|
24
|
+
writer.uint32(18).bytes(message.elems);
|
|
25
|
+
}
|
|
26
|
+
return writer;
|
|
27
|
+
},
|
|
28
|
+
decode(input, length) {
|
|
29
|
+
const reader = input instanceof _m0__default["default"].Reader ? input : new _m0__default["default"].Reader(input);
|
|
30
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
31
|
+
const message = createBaseCompactBitArray();
|
|
32
|
+
while (reader.pos < end) {
|
|
33
|
+
const tag = reader.uint32();
|
|
34
|
+
switch (tag >>> 3) {
|
|
35
|
+
case 1:
|
|
36
|
+
message.extraBitsStored = reader.uint32();
|
|
37
|
+
break;
|
|
38
|
+
case 2:
|
|
39
|
+
message.elems = reader.bytes();
|
|
40
|
+
break;
|
|
41
|
+
default:
|
|
42
|
+
reader.skipType(tag & 7);
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return message;
|
|
47
|
+
},
|
|
48
|
+
fromPartial(object) {
|
|
49
|
+
const message = createBaseCompactBitArray();
|
|
50
|
+
message.extraBitsStored = object.extraBitsStored ?? 0;
|
|
51
|
+
message.elems = object.elems ?? new Uint8Array();
|
|
52
|
+
return message;
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
exports.CompactBitArray = CompactBitArray;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _m0 = require('protobufjs/minimal.js');
|
|
6
|
+
|
|
7
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
+
|
|
9
|
+
var _m0__default = /*#__PURE__*/_interopDefaultLegacy(_m0);
|
|
10
|
+
|
|
11
|
+
// ----------------------------------------------------------------------------
|
|
12
|
+
function createBasePubKey() {
|
|
13
|
+
return {
|
|
14
|
+
key: new Uint8Array()
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
const PubKey = {
|
|
18
|
+
encode(message, writer = _m0__default["default"].Writer.create()) {
|
|
19
|
+
if (message.key.length !== 0) {
|
|
20
|
+
writer.uint32(10).bytes(message.key);
|
|
21
|
+
}
|
|
22
|
+
return writer;
|
|
23
|
+
},
|
|
24
|
+
decode(input, length) {
|
|
25
|
+
const reader = input instanceof _m0__default["default"].Reader ? input : new _m0__default["default"].Reader(input);
|
|
26
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
27
|
+
const message = createBasePubKey();
|
|
28
|
+
while (reader.pos < end) {
|
|
29
|
+
const tag = reader.uint32();
|
|
30
|
+
switch (tag >>> 3) {
|
|
31
|
+
case 1:
|
|
32
|
+
message.key = reader.bytes();
|
|
33
|
+
break;
|
|
34
|
+
default:
|
|
35
|
+
reader.skipType(tag & 7);
|
|
36
|
+
break;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return message;
|
|
40
|
+
},
|
|
41
|
+
fromPartial(object) {
|
|
42
|
+
const message = createBasePubKey();
|
|
43
|
+
message.key = object.key ?? new Uint8Array();
|
|
44
|
+
return message;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
exports.PubKey = PubKey;
|