ccxt 4.2.31 → 4.2.34
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/.gitattributes +1 -0
- package/CONTRIBUTING.md +20 -1
- package/README.md +8 -7
- package/build.sh +9 -2
- package/cleanup.sh +3 -0
- package/dist/ccxt.browser.js +639 -483
- package/dist/ccxt.browser.min.js +3 -3
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/ace.js +3 -2
- package/dist/cjs/src/ascendex.js +1 -1
- package/dist/cjs/src/base/Exchange.js +54 -20
- package/dist/cjs/src/bigone.js +21 -1
- package/dist/cjs/src/binance.js +5 -4
- package/dist/cjs/src/bingx.js +4 -3
- package/dist/cjs/src/bit2c.js +12 -0
- package/dist/cjs/src/bitget.js +3 -3
- package/dist/cjs/src/bitmart.js +1 -1
- package/dist/cjs/src/bitrue.js +3 -3
- package/dist/cjs/src/blockchaincom.js +1 -1
- package/dist/cjs/src/bybit.js +1 -1
- package/dist/cjs/src/coinbase.js +2 -2
- package/dist/cjs/src/coinex.js +1 -1
- package/dist/cjs/src/cryptocom.js +10 -10
- package/dist/cjs/src/gate.js +34 -29
- package/dist/cjs/src/kraken.js +39 -0
- package/dist/cjs/src/kucoin.js +1 -1
- package/dist/cjs/src/mexc.js +2 -1
- package/dist/cjs/src/okx.js +4 -3
- package/dist/cjs/src/phemex.js +8 -8
- package/dist/cjs/src/pro/alpaca.js +8 -4
- package/dist/cjs/src/pro/ascendex.js +1 -2
- package/dist/cjs/src/pro/binance.js +14 -10
- package/dist/cjs/src/pro/bingx.js +1 -1
- package/dist/cjs/src/pro/bitfinex.js +21 -24
- package/dist/cjs/src/pro/bitfinex2.js +13 -17
- package/dist/cjs/src/pro/bitget.js +3 -1
- package/dist/cjs/src/pro/bitmart.js +3 -8
- package/dist/cjs/src/pro/bitmex.js +4 -7
- package/dist/cjs/src/pro/bitopro.js +2 -5
- package/dist/cjs/src/pro/bitrue.js +1 -1
- package/dist/cjs/src/pro/bitstamp.js +2 -3
- package/dist/cjs/src/pro/bitvavo.js +12 -5
- package/dist/cjs/src/pro/blockchaincom.js +22 -23
- package/dist/cjs/src/pro/bybit.js +5 -5
- package/dist/cjs/src/pro/cex.js +7 -7
- package/dist/cjs/src/pro/coinbase.js +3 -2
- package/dist/cjs/src/pro/coinbasepro.js +1 -1
- package/dist/cjs/src/pro/coinex.js +15 -13
- package/dist/cjs/src/pro/currencycom.js +5 -7
- package/dist/cjs/src/pro/deribit.js +4 -4
- package/dist/cjs/src/pro/exmo.js +15 -13
- package/dist/cjs/src/pro/gate.js +1 -1
- package/dist/cjs/src/pro/gemini.js +4 -2
- package/dist/cjs/src/pro/hitbtc.js +9 -8
- package/dist/cjs/src/pro/hollaex.js +2 -2
- package/dist/cjs/src/pro/htx.js +6 -7
- package/dist/cjs/src/pro/huobijp.js +3 -5
- package/dist/cjs/src/pro/idex.js +1 -1
- package/dist/cjs/src/pro/independentreserve.js +14 -13
- package/dist/cjs/src/pro/kraken.js +10 -16
- package/dist/cjs/src/pro/krakenfutures.js +10 -6
- package/dist/cjs/src/pro/kucoin.js +10 -11
- package/dist/cjs/src/pro/kucoinfutures.js +12 -11
- package/dist/cjs/src/pro/lbank.js +10 -10
- package/dist/cjs/src/pro/luno.js +12 -14
- package/dist/cjs/src/pro/mexc.js +3 -2
- package/dist/cjs/src/pro/ndax.js +7 -13
- package/dist/cjs/src/pro/okcoin.js +7 -12
- package/dist/cjs/src/pro/okx.js +6 -11
- package/dist/cjs/src/pro/onetrading.js +16 -15
- package/dist/cjs/src/pro/p2b.js +5 -3
- package/dist/cjs/src/pro/phemex.js +16 -11
- package/dist/cjs/src/pro/poloniex.js +6 -4
- package/dist/cjs/src/pro/poloniexfutures.js +14 -9
- package/dist/cjs/src/pro/probit.js +15 -11
- package/dist/cjs/src/pro/upbit.js +8 -8
- package/dist/cjs/src/pro/wazirx.js +6 -3
- package/dist/cjs/src/pro/woo.js +8 -6
- package/dist/cjs/src/probit.js +3 -3
- package/dist/cjs/src/tokocrypto.js +2 -2
- package/dist/cjs/src/wavesexchange.js +2 -1
- package/dist/cjs/src/woo.js +1 -1
- package/dist/cjs/src/yobit.js +39 -0
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/ace.d.ts +1 -1
- package/js/src/ace.js +3 -2
- package/js/src/alpaca.d.ts +1 -1
- package/js/src/ascendex.d.ts +5 -15
- package/js/src/ascendex.js +1 -1
- package/js/src/base/Exchange.d.ts +87 -78
- package/js/src/base/Exchange.js +54 -20
- package/js/src/base/types.d.ts +90 -6
- package/js/src/bigone.d.ts +5 -15
- package/js/src/bigone.js +21 -1
- package/js/src/binance.d.ts +13 -23
- package/js/src/binance.js +5 -4
- package/js/src/bingx.d.ts +6 -16
- package/js/src/bingx.js +4 -3
- package/js/src/bit2c.d.ts +1 -1
- package/js/src/bit2c.js +12 -0
- package/js/src/bitbank.d.ts +2 -2
- package/js/src/bitbns.d.ts +1 -1
- package/js/src/bitfinex.d.ts +5 -5
- package/js/src/bitfinex2.d.ts +7 -17
- package/js/src/bitflyer.d.ts +5 -5
- package/js/src/bitforex.d.ts +1 -1
- package/js/src/bitget.d.ts +8 -38
- package/js/src/bitget.js +3 -3
- package/js/src/bithumb.d.ts +2 -2
- package/js/src/bitmart.d.ts +10 -21
- package/js/src/bitmart.js +1 -1
- package/js/src/bitmex.d.ts +3 -3
- package/js/src/bitopro.d.ts +2 -2
- package/js/src/bitrue.d.ts +5 -15
- package/js/src/bitrue.js +3 -3
- package/js/src/bitso.d.ts +4 -4
- package/js/src/bitstamp.d.ts +2 -2
- package/js/src/bitteam.d.ts +1 -1
- package/js/src/bitvavo.d.ts +3 -3
- package/js/src/bl3p.d.ts +1 -1
- package/js/src/blockchaincom.d.ts +2 -2
- package/js/src/blockchaincom.js +1 -1
- package/js/src/btcalpha.d.ts +1 -1
- package/js/src/btcbox.d.ts +1 -1
- package/js/src/btcmarkets.d.ts +3 -3
- package/js/src/btcturk.d.ts +1 -1
- package/js/src/bybit.d.ts +8 -8
- package/js/src/bybit.js +1 -1
- package/js/src/cex.d.ts +1 -1
- package/js/src/coinbase.d.ts +6 -50
- package/js/src/coinbase.js +2 -2
- package/js/src/coinbasepro.d.ts +2 -2
- package/js/src/coincheck.d.ts +1 -1
- package/js/src/coinex.d.ts +8 -8
- package/js/src/coinex.js +1 -1
- package/js/src/coinlist.d.ts +4 -14
- package/js/src/coinmate.d.ts +2 -2
- package/js/src/coinmetro.d.ts +2 -2
- package/js/src/coinone.d.ts +1 -1
- package/js/src/coinsph.d.ts +2 -2
- package/js/src/coinspot.d.ts +1 -1
- package/js/src/cryptocom.d.ts +4 -4
- package/js/src/cryptocom.js +10 -10
- package/js/src/currencycom.d.ts +2 -2
- package/js/src/delta.d.ts +2 -2
- package/js/src/deribit.d.ts +4 -14
- package/js/src/digifinex.d.ts +10 -38
- package/js/src/exmo.d.ts +2 -2
- package/js/src/gate.d.ts +8 -18
- package/js/src/gate.js +34 -29
- package/js/src/gemini.d.ts +2 -2
- package/js/src/hitbtc.d.ts +6 -16
- package/js/src/hollaex.d.ts +2 -2
- package/js/src/htx.d.ts +11 -21
- package/js/src/huobijp.d.ts +4 -4
- package/js/src/idex.d.ts +3 -3
- package/js/src/independentreserve.d.ts +2 -2
- package/js/src/indodax.d.ts +2 -2
- package/js/src/kraken.d.ts +5 -5
- package/js/src/kraken.js +39 -0
- package/js/src/krakenfutures.d.ts +7 -7
- package/js/src/kucoin.d.ts +8 -29
- package/js/src/kucoin.js +1 -1
- package/js/src/kucoinfutures.d.ts +4 -4
- package/js/src/kuna.d.ts +2 -2
- package/js/src/latoken.d.ts +4 -14
- package/js/src/lbank.d.ts +2 -5
- package/js/src/luno.d.ts +1 -1
- package/js/src/lykke.d.ts +2 -2
- package/js/src/mercado.d.ts +2 -2
- package/js/src/mexc.d.ts +6 -6
- package/js/src/mexc.js +2 -1
- package/js/src/ndax.d.ts +2 -2
- package/js/src/novadax.d.ts +4 -15
- package/js/src/oceanex.d.ts +1 -1
- package/js/src/okcoin.d.ts +5 -15
- package/js/src/okx.d.ts +8 -18
- package/js/src/okx.js +4 -3
- package/js/src/onetrading.d.ts +2 -2
- package/js/src/p2b.d.ts +1 -1
- package/js/src/paymium.d.ts +3 -13
- package/js/src/phemex.d.ts +5 -5
- package/js/src/phemex.js +8 -8
- package/js/src/poloniex.d.ts +4 -14
- package/js/src/poloniexfutures.d.ts +1 -1
- package/js/src/pro/alpaca.d.ts +2 -2
- package/js/src/pro/alpaca.js +8 -4
- package/js/src/pro/ascendex.d.ts +2 -2
- package/js/src/pro/ascendex.js +1 -2
- package/js/src/pro/binance.d.ts +3 -3
- package/js/src/pro/binance.js +14 -10
- package/js/src/pro/bingx.d.ts +1 -1
- package/js/src/pro/bingx.js +1 -1
- package/js/src/pro/bitfinex.d.ts +2 -2
- package/js/src/pro/bitfinex.js +21 -24
- package/js/src/pro/bitfinex2.d.ts +2 -2
- package/js/src/pro/bitfinex2.js +13 -17
- package/js/src/pro/bitget.js +3 -1
- package/js/src/pro/bitmart.d.ts +3 -3
- package/js/src/pro/bitmart.js +3 -8
- package/js/src/pro/bitmex.d.ts +1 -1
- package/js/src/pro/bitmex.js +4 -7
- package/js/src/pro/bitopro.d.ts +1 -1
- package/js/src/pro/bitopro.js +2 -5
- package/js/src/pro/bitrue.js +1 -1
- package/js/src/pro/bitstamp.d.ts +1 -1
- package/js/src/pro/bitstamp.js +2 -3
- package/js/src/pro/bitvavo.d.ts +3 -3
- package/js/src/pro/bitvavo.js +12 -5
- package/js/src/pro/blockchaincom.d.ts +8 -8
- package/js/src/pro/blockchaincom.js +22 -23
- package/js/src/pro/bybit.d.ts +2 -2
- package/js/src/pro/bybit.js +5 -5
- package/js/src/pro/cex.d.ts +1 -1
- package/js/src/pro/cex.js +7 -7
- package/js/src/pro/coinbase.d.ts +1 -1
- package/js/src/pro/coinbase.js +3 -2
- package/js/src/pro/coinbasepro.d.ts +1 -1
- package/js/src/pro/coinbasepro.js +1 -1
- package/js/src/pro/coinex.d.ts +2 -2
- package/js/src/pro/coinex.js +15 -13
- package/js/src/pro/currencycom.d.ts +1 -1
- package/js/src/pro/currencycom.js +5 -7
- package/js/src/pro/deribit.d.ts +2 -2
- package/js/src/pro/deribit.js +4 -4
- package/js/src/pro/exmo.d.ts +2 -2
- package/js/src/pro/exmo.js +15 -13
- package/js/src/pro/gate.js +1 -1
- package/js/src/pro/gemini.d.ts +1 -1
- package/js/src/pro/gemini.js +4 -2
- package/js/src/pro/hitbtc.d.ts +2 -2
- package/js/src/pro/hitbtc.js +9 -8
- package/js/src/pro/hollaex.d.ts +2 -2
- package/js/src/pro/hollaex.js +2 -2
- package/js/src/pro/htx.d.ts +2 -2
- package/js/src/pro/htx.js +6 -7
- package/js/src/pro/huobijp.d.ts +1 -1
- package/js/src/pro/huobijp.js +3 -5
- package/js/src/pro/idex.js +1 -1
- package/js/src/pro/independentreserve.d.ts +1 -1
- package/js/src/pro/independentreserve.js +14 -13
- package/js/src/pro/kraken.d.ts +2 -2
- package/js/src/pro/kraken.js +10 -16
- package/js/src/pro/krakenfutures.d.ts +1 -1
- package/js/src/pro/krakenfutures.js +10 -6
- package/js/src/pro/kucoin.d.ts +3 -3
- package/js/src/pro/kucoin.js +10 -11
- package/js/src/pro/kucoinfutures.d.ts +3 -3
- package/js/src/pro/kucoinfutures.js +12 -11
- package/js/src/pro/lbank.d.ts +1 -1
- package/js/src/pro/lbank.js +10 -10
- package/js/src/pro/luno.d.ts +2 -2
- package/js/src/pro/luno.js +12 -14
- package/js/src/pro/mexc.d.ts +2 -2
- package/js/src/pro/mexc.js +3 -2
- package/js/src/pro/ndax.d.ts +3 -3
- package/js/src/pro/ndax.js +7 -13
- package/js/src/pro/okcoin.d.ts +1 -1
- package/js/src/pro/okcoin.js +7 -12
- package/js/src/pro/okx.d.ts +1 -1
- package/js/src/pro/okx.js +6 -11
- package/js/src/pro/onetrading.d.ts +1 -1
- package/js/src/pro/onetrading.js +16 -15
- package/js/src/pro/p2b.d.ts +1 -1
- package/js/src/pro/p2b.js +5 -3
- package/js/src/pro/phemex.d.ts +3 -3
- package/js/src/pro/phemex.js +16 -11
- package/js/src/pro/poloniex.d.ts +1 -1
- package/js/src/pro/poloniex.js +6 -4
- package/js/src/pro/poloniexfutures.d.ts +4 -4
- package/js/src/pro/poloniexfutures.js +13 -10
- package/js/src/pro/probit.d.ts +1 -1
- package/js/src/pro/probit.js +14 -12
- package/js/src/pro/upbit.js +8 -8
- package/js/src/pro/wazirx.d.ts +1 -1
- package/js/src/pro/wazirx.js +6 -3
- package/js/src/pro/woo.d.ts +3 -3
- package/js/src/pro/woo.js +8 -6
- package/js/src/probit.d.ts +3 -3
- package/js/src/probit.js +3 -3
- package/js/src/timex.d.ts +1 -1
- package/js/src/tokocrypto.d.ts +3 -3
- package/js/src/tokocrypto.js +2 -2
- package/js/src/upbit.d.ts +2 -2
- package/js/src/wavesexchange.d.ts +3 -4
- package/js/src/wavesexchange.js +2 -1
- package/js/src/wazirx.d.ts +1 -1
- package/js/src/whitebit.d.ts +5 -15
- package/js/src/woo.d.ts +5 -15
- package/js/src/woo.js +1 -1
- package/js/src/yobit.d.ts +21 -6
- package/js/src/yobit.js +39 -0
- package/js/src/zaif.d.ts +2 -2
- package/js/src/zonda.d.ts +4 -14
- package/package.json +22 -8
- package/skip-tests.json +9 -1
- package/tests-manager.sh +1 -2
package/js/src/pro/cex.d.ts
CHANGED
|
@@ -46,7 +46,7 @@ export default class cex extends cexRest {
|
|
|
46
46
|
resolveData(client: Client, message: any): void;
|
|
47
47
|
handleConnected(client: Client, message: any): any;
|
|
48
48
|
handleErrorMessage(client: Client, message: any): void;
|
|
49
|
-
handleMessage(client: Client, message: any):
|
|
49
|
+
handleMessage(client: Client, message: any): void;
|
|
50
50
|
handleAuthenticationMessage(client: Client, message: any): void;
|
|
51
51
|
authenticate(params?: {}): Promise<any>;
|
|
52
52
|
}
|
package/js/src/pro/cex.js
CHANGED
|
@@ -963,15 +963,15 @@ export default class cex extends cexRest {
|
|
|
963
963
|
const messageHash = 'orderbook:' + symbol;
|
|
964
964
|
const timestamp = this.safeInteger2(data, 'timestamp_ms', 'timestamp');
|
|
965
965
|
const incrementalId = this.safeNumber(data, 'id');
|
|
966
|
-
const
|
|
966
|
+
const orderbook = this.orderBook({});
|
|
967
967
|
const snapshot = this.parseOrderBook(data, symbol, timestamp, 'bids', 'asks');
|
|
968
968
|
snapshot['nonce'] = incrementalId;
|
|
969
|
-
|
|
969
|
+
orderbook.reset(snapshot);
|
|
970
970
|
this.options['orderbook'][symbol] = {
|
|
971
971
|
'incrementalId': incrementalId,
|
|
972
972
|
};
|
|
973
|
-
this.orderbooks[symbol] =
|
|
974
|
-
client.resolve(
|
|
973
|
+
this.orderbooks[symbol] = orderbook;
|
|
974
|
+
client.resolve(orderbook, messageHash);
|
|
975
975
|
}
|
|
976
976
|
pairToSymbol(pair) {
|
|
977
977
|
const parts = pair.split(':');
|
|
@@ -1437,7 +1437,8 @@ export default class cex extends cexRest {
|
|
|
1437
1437
|
handleMessage(client, message) {
|
|
1438
1438
|
const ok = this.safeString(message, 'ok');
|
|
1439
1439
|
if (ok === 'error') {
|
|
1440
|
-
|
|
1440
|
+
this.handleErrorMessage(client, message);
|
|
1441
|
+
return;
|
|
1441
1442
|
}
|
|
1442
1443
|
const event = this.safeString(message, 'e');
|
|
1443
1444
|
const handlers = {
|
|
@@ -1465,9 +1466,8 @@ export default class cex extends cexRest {
|
|
|
1465
1466
|
};
|
|
1466
1467
|
const handler = this.safeValue(handlers, event);
|
|
1467
1468
|
if (handler !== undefined) {
|
|
1468
|
-
|
|
1469
|
+
handler.call(this, client, message);
|
|
1469
1470
|
}
|
|
1470
|
-
return message;
|
|
1471
1471
|
}
|
|
1472
1472
|
handleAuthenticationMessage(client, message) {
|
|
1473
1473
|
//
|
package/js/src/pro/coinbase.d.ts
CHANGED
|
@@ -16,5 +16,5 @@ export default class coinbase extends coinbaseRest {
|
|
|
16
16
|
handleOrderBookHelper(orderbook: any, updates: any): void;
|
|
17
17
|
handleOrderBook(client: any, message: any): any;
|
|
18
18
|
handleSubscriptionStatus(client: any, message: any): any;
|
|
19
|
-
handleMessage(client: any, message: any):
|
|
19
|
+
handleMessage(client: any, message: any): void;
|
|
20
20
|
}
|
package/js/src/pro/coinbase.js
CHANGED
|
@@ -464,7 +464,8 @@ export default class coinbase extends coinbaseRest {
|
|
|
464
464
|
const side = this.safeString(this.options['sides'], sideId);
|
|
465
465
|
const price = this.safeNumber(trade, 'price_level');
|
|
466
466
|
const amount = this.safeNumber(trade, 'new_quantity');
|
|
467
|
-
orderbook[side]
|
|
467
|
+
const orderbookSide = orderbook[side];
|
|
468
|
+
orderbookSide.store(price, amount);
|
|
468
469
|
}
|
|
469
470
|
}
|
|
470
471
|
handleOrderBook(client, message) {
|
|
@@ -557,6 +558,6 @@ export default class coinbase extends coinbaseRest {
|
|
|
557
558
|
throw new ExchangeError(errorMessage);
|
|
558
559
|
}
|
|
559
560
|
const method = this.safeValue(methods, channel);
|
|
560
|
-
|
|
561
|
+
method.call(this, client, message);
|
|
561
562
|
}
|
|
562
563
|
}
|
|
@@ -34,5 +34,5 @@ export default class coinbasepro extends coinbaseproRest {
|
|
|
34
34
|
handleOrderBook(client: Client, message: any): void;
|
|
35
35
|
handleSubscriptionStatus(client: Client, message: any): any;
|
|
36
36
|
handleErrorMessage(client: Client, message: any): boolean;
|
|
37
|
-
handleMessage(client: Client, message: any):
|
|
37
|
+
handleMessage(client: Client, message: any): void;
|
|
38
38
|
}
|
package/js/src/pro/coinex.d.ts
CHANGED
|
@@ -24,8 +24,8 @@ export default class coinex extends coinexRest {
|
|
|
24
24
|
handleOrders(client: Client, message: any): void;
|
|
25
25
|
parseWsOrder(order: any, market?: any): Order;
|
|
26
26
|
parseWsOrderStatus(status: any): string;
|
|
27
|
-
handleMessage(client: Client, message: any):
|
|
27
|
+
handleMessage(client: Client, message: any): void;
|
|
28
28
|
handleAuthenticationMessage(client: Client, message: any): any;
|
|
29
29
|
handleSubscriptionStatus(client: Client, message: any): void;
|
|
30
|
-
authenticate(params?: {}): any
|
|
30
|
+
authenticate(params?: {}): Promise<any>;
|
|
31
31
|
}
|
package/js/src/pro/coinex.js
CHANGED
|
@@ -656,29 +656,29 @@ export default class coinex extends coinexRest {
|
|
|
656
656
|
//
|
|
657
657
|
const params = this.safeValue(message, 'params', []);
|
|
658
658
|
const fullOrderBook = this.safeValue(params, 0);
|
|
659
|
-
let
|
|
659
|
+
let orderbook = this.safeValue(params, 1);
|
|
660
660
|
const marketId = this.safeString(params, 2);
|
|
661
661
|
const defaultType = this.safeString(this.options, 'defaultType');
|
|
662
662
|
const market = this.safeMarket(marketId, undefined, undefined, defaultType);
|
|
663
663
|
const symbol = market['symbol'];
|
|
664
664
|
const name = 'orderbook';
|
|
665
665
|
const messageHash = name + ':' + symbol;
|
|
666
|
-
const timestamp = this.safeInteger(
|
|
666
|
+
const timestamp = this.safeInteger(orderbook, 'time');
|
|
667
667
|
const currentOrderBook = this.safeValue(this.orderbooks, symbol);
|
|
668
668
|
if (fullOrderBook) {
|
|
669
|
-
const snapshot = this.parseOrderBook(
|
|
669
|
+
const snapshot = this.parseOrderBook(orderbook, symbol, timestamp);
|
|
670
670
|
if (currentOrderBook === undefined) {
|
|
671
|
-
|
|
672
|
-
this.orderbooks[symbol] =
|
|
671
|
+
orderbook = this.orderBook(snapshot);
|
|
672
|
+
this.orderbooks[symbol] = orderbook;
|
|
673
673
|
}
|
|
674
674
|
else {
|
|
675
|
-
|
|
676
|
-
|
|
675
|
+
orderbook = this.orderbooks[symbol];
|
|
676
|
+
orderbook.reset(snapshot);
|
|
677
677
|
}
|
|
678
678
|
}
|
|
679
679
|
else {
|
|
680
|
-
const asks = this.safeValue(
|
|
681
|
-
const bids = this.safeValue(
|
|
680
|
+
const asks = this.safeValue(orderbook, 'asks', []);
|
|
681
|
+
const bids = this.safeValue(orderbook, 'bids', []);
|
|
682
682
|
this.handleDeltas(currentOrderBook['asks'], asks);
|
|
683
683
|
this.handleDeltas(currentOrderBook['bids'], bids);
|
|
684
684
|
currentOrderBook['nonce'] = timestamp;
|
|
@@ -999,9 +999,10 @@ export default class coinex extends coinexRest {
|
|
|
999
999
|
};
|
|
1000
1000
|
const handler = this.safeValue(handlers, method);
|
|
1001
1001
|
if (handler !== undefined) {
|
|
1002
|
-
|
|
1002
|
+
handler.call(this, client, message);
|
|
1003
|
+
return;
|
|
1003
1004
|
}
|
|
1004
|
-
|
|
1005
|
+
this.handleSubscriptionStatus(client, message);
|
|
1005
1006
|
}
|
|
1006
1007
|
handleAuthenticationMessage(client, message) {
|
|
1007
1008
|
//
|
|
@@ -1025,7 +1026,8 @@ export default class coinex extends coinexRest {
|
|
|
1025
1026
|
if (subscription !== undefined) {
|
|
1026
1027
|
const futureIndex = this.safeString(subscription, 'future');
|
|
1027
1028
|
if (futureIndex === 'ohlcv') {
|
|
1028
|
-
|
|
1029
|
+
this.handleOHLCV(client, message);
|
|
1030
|
+
return;
|
|
1029
1031
|
}
|
|
1030
1032
|
const future = this.safeValue(client.futures, futureIndex);
|
|
1031
1033
|
if (future !== undefined) {
|
|
@@ -1034,7 +1036,7 @@ export default class coinex extends coinexRest {
|
|
|
1034
1036
|
delete client.subscriptions[id];
|
|
1035
1037
|
}
|
|
1036
1038
|
}
|
|
1037
|
-
authenticate(params = {}) {
|
|
1039
|
+
async authenticate(params = {}) {
|
|
1038
1040
|
let type = undefined;
|
|
1039
1041
|
[type, params] = this.handleMarketTypeAndParams('authenticate', undefined, params);
|
|
1040
1042
|
const url = this.urls['api']['ws'][type];
|
|
@@ -39,5 +39,5 @@ export default class currencycom extends currencycomRest {
|
|
|
39
39
|
watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
40
40
|
handleDeltas(bookside: any, deltas: any): void;
|
|
41
41
|
handleOrderBook(client: Client, message: any): void;
|
|
42
|
-
handleMessage(client: Client, message: any):
|
|
42
|
+
handleMessage(client: Client, message: any): void;
|
|
43
43
|
}
|
|
@@ -535,10 +535,11 @@ export default class currencycom extends currencycomRest {
|
|
|
535
535
|
};
|
|
536
536
|
const method = this.safeValue(methods, subscriptionDestination);
|
|
537
537
|
if (method === undefined) {
|
|
538
|
-
return
|
|
538
|
+
return;
|
|
539
539
|
}
|
|
540
540
|
else {
|
|
541
|
-
|
|
541
|
+
method.call(this, client, message, subscription);
|
|
542
|
+
return;
|
|
542
543
|
}
|
|
543
544
|
}
|
|
544
545
|
}
|
|
@@ -553,11 +554,8 @@ export default class currencycom extends currencycomRest {
|
|
|
553
554
|
'ping': this.handlePong,
|
|
554
555
|
};
|
|
555
556
|
const method = this.safeValue(methods, destination);
|
|
556
|
-
if (method
|
|
557
|
-
|
|
558
|
-
}
|
|
559
|
-
else {
|
|
560
|
-
return method.call(this, client, message);
|
|
557
|
+
if (method !== undefined) {
|
|
558
|
+
method.call(this, client, message);
|
|
561
559
|
}
|
|
562
560
|
}
|
|
563
561
|
}
|
package/js/src/pro/deribit.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export default class deribit extends deribitRest {
|
|
|
21
21
|
handleOrders(client: Client, message: any): void;
|
|
22
22
|
watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
23
23
|
handleOHLCV(client: Client, message: any): void;
|
|
24
|
-
handleMessage(client: Client, message: any):
|
|
24
|
+
handleMessage(client: Client, message: any): void;
|
|
25
25
|
handleAuthenticationMessage(client: Client, message: any): any;
|
|
26
|
-
authenticate(params?: {}): any
|
|
26
|
+
authenticate(params?: {}): Promise<any>;
|
|
27
27
|
}
|
package/js/src/pro/deribit.js
CHANGED
|
@@ -762,16 +762,16 @@ export default class deribit extends deribitRest {
|
|
|
762
762
|
};
|
|
763
763
|
const handler = this.safeValue(handlers, channelId);
|
|
764
764
|
if (handler !== undefined) {
|
|
765
|
-
|
|
765
|
+
handler.call(this, client, message);
|
|
766
|
+
return;
|
|
766
767
|
}
|
|
767
768
|
throw new NotSupported(this.id + ' no handler found for this message ' + this.json(message));
|
|
768
769
|
}
|
|
769
770
|
const result = this.safeValue(message, 'result', {});
|
|
770
771
|
const accessToken = this.safeString(result, 'access_token');
|
|
771
772
|
if (accessToken !== undefined) {
|
|
772
|
-
|
|
773
|
+
this.handleAuthenticationMessage(client, message);
|
|
773
774
|
}
|
|
774
|
-
return message;
|
|
775
775
|
}
|
|
776
776
|
handleAuthenticationMessage(client, message) {
|
|
777
777
|
//
|
|
@@ -795,7 +795,7 @@ export default class deribit extends deribitRest {
|
|
|
795
795
|
client.resolve(message, messageHash);
|
|
796
796
|
return message;
|
|
797
797
|
}
|
|
798
|
-
authenticate(params = {}) {
|
|
798
|
+
async authenticate(params = {}) {
|
|
799
799
|
const url = this.urls['api']['ws'];
|
|
800
800
|
const client = this.client(url);
|
|
801
801
|
const time = this.milliseconds();
|
package/js/src/pro/exmo.d.ts
CHANGED
|
@@ -18,9 +18,9 @@ export default class exmo extends exmoRest {
|
|
|
18
18
|
handleOrderBook(client: Client, message: any): void;
|
|
19
19
|
handleDelta(bookside: any, delta: any): void;
|
|
20
20
|
handleDeltas(bookside: any, deltas: any): void;
|
|
21
|
-
handleMessage(client: Client, message: any):
|
|
21
|
+
handleMessage(client: Client, message: any): void;
|
|
22
22
|
handleSubscribed(client: Client, message: any): any;
|
|
23
23
|
handleInfo(client: Client, message: any): any;
|
|
24
24
|
handleAuthenticationMessage(client: Client, message: any): void;
|
|
25
|
-
authenticate(params?: {}): any
|
|
25
|
+
authenticate(params?: {}): Promise<any>;
|
|
26
26
|
}
|
package/js/src/pro/exmo.js
CHANGED
|
@@ -515,25 +515,25 @@ export default class exmo extends exmoRest {
|
|
|
515
515
|
const orderBook = this.safeValue(message, 'data', {});
|
|
516
516
|
const messageHash = 'orderbook:' + symbol;
|
|
517
517
|
const timestamp = this.safeInteger(message, 'ts');
|
|
518
|
-
let
|
|
519
|
-
if (
|
|
520
|
-
|
|
521
|
-
this.orderbooks[symbol] =
|
|
518
|
+
let orderbook = this.safeValue(this.orderbooks, symbol);
|
|
519
|
+
if (orderbook === undefined) {
|
|
520
|
+
orderbook = this.orderBook({});
|
|
521
|
+
this.orderbooks[symbol] = orderbook;
|
|
522
522
|
}
|
|
523
523
|
const event = this.safeString(message, 'event');
|
|
524
524
|
if (event === 'snapshot') {
|
|
525
525
|
const snapshot = this.parseOrderBook(orderBook, symbol, timestamp, 'bid', 'ask');
|
|
526
|
-
|
|
526
|
+
orderbook.reset(snapshot);
|
|
527
527
|
}
|
|
528
528
|
else {
|
|
529
529
|
const asks = this.safeValue(orderBook, 'ask', []);
|
|
530
530
|
const bids = this.safeValue(orderBook, 'bid', []);
|
|
531
|
-
this.handleDeltas(
|
|
532
|
-
this.handleDeltas(
|
|
533
|
-
|
|
534
|
-
|
|
531
|
+
this.handleDeltas(orderbook['asks'], asks);
|
|
532
|
+
this.handleDeltas(orderbook['bids'], bids);
|
|
533
|
+
orderbook['timestamp'] = timestamp;
|
|
534
|
+
orderbook['datetime'] = this.iso8601(timestamp);
|
|
535
535
|
}
|
|
536
|
-
client.resolve(
|
|
536
|
+
client.resolve(orderbook, messageHash);
|
|
537
537
|
}
|
|
538
538
|
handleDelta(bookside, delta) {
|
|
539
539
|
const bidAsk = this.parseBidAsk(delta, 0, 1);
|
|
@@ -568,7 +568,8 @@ export default class exmo extends exmoRest {
|
|
|
568
568
|
};
|
|
569
569
|
const eventHandler = this.safeValue(events, event);
|
|
570
570
|
if (eventHandler !== undefined) {
|
|
571
|
-
|
|
571
|
+
eventHandler.call(this, client, message);
|
|
572
|
+
return;
|
|
572
573
|
}
|
|
573
574
|
if ((event === 'update') || (event === 'snapshot')) {
|
|
574
575
|
const topic = this.safeString(message, 'topic');
|
|
@@ -590,7 +591,8 @@ export default class exmo extends exmoRest {
|
|
|
590
591
|
};
|
|
591
592
|
const handler = this.safeValue(handlers, channel);
|
|
592
593
|
if (handler !== undefined) {
|
|
593
|
-
|
|
594
|
+
handler.call(this, client, message);
|
|
595
|
+
return;
|
|
594
596
|
}
|
|
595
597
|
}
|
|
596
598
|
}
|
|
@@ -631,7 +633,7 @@ export default class exmo extends exmoRest {
|
|
|
631
633
|
const messageHash = 'authenticated';
|
|
632
634
|
client.resolve(message, messageHash);
|
|
633
635
|
}
|
|
634
|
-
authenticate(params = {}) {
|
|
636
|
+
async authenticate(params = {}) {
|
|
635
637
|
const messageHash = 'authenticated';
|
|
636
638
|
const [type, query] = this.handleMarketTypeAndParams('authenticate', undefined, params);
|
|
637
639
|
const url = this.urls['api']['ws'][type];
|
package/js/src/pro/gate.js
CHANGED
|
@@ -210,7 +210,7 @@ export default class gate extends gateRest {
|
|
|
210
210
|
// max limit is 100
|
|
211
211
|
const subscription = client.subscriptions[messageHash];
|
|
212
212
|
const limit = this.safeInteger(subscription, 'limit');
|
|
213
|
-
this.spawn(this.loadOrderBook, client, messageHash, symbol, limit);
|
|
213
|
+
this.spawn(this.loadOrderBook, client, messageHash, symbol, limit, {}); // needed for c#, number of args needs to match
|
|
214
214
|
}
|
|
215
215
|
storedOrderBook.cache.push(delta);
|
|
216
216
|
return;
|
package/js/src/pro/gemini.d.ts
CHANGED
|
@@ -20,6 +20,6 @@ export default class gemini extends geminiRest {
|
|
|
20
20
|
parseWsOrderStatus(status: any): string;
|
|
21
21
|
parseWsOrderType(type: any): string;
|
|
22
22
|
handleError(client: Client, message: any): void;
|
|
23
|
-
handleMessage(client: Client, message: any):
|
|
23
|
+
handleMessage(client: Client, message: any): void;
|
|
24
24
|
authenticate(params?: {}): Promise<void>;
|
|
25
25
|
}
|
package/js/src/pro/gemini.js
CHANGED
|
@@ -591,7 +591,8 @@ export default class gemini extends geminiRest {
|
|
|
591
591
|
//
|
|
592
592
|
const isArray = Array.isArray(message);
|
|
593
593
|
if (isArray) {
|
|
594
|
-
|
|
594
|
+
this.handleOrder(client, message);
|
|
595
|
+
return;
|
|
595
596
|
}
|
|
596
597
|
const reason = this.safeString(message, 'reason');
|
|
597
598
|
if (reason === 'error') {
|
|
@@ -605,7 +606,8 @@ export default class gemini extends geminiRest {
|
|
|
605
606
|
};
|
|
606
607
|
const type = this.safeString(message, 'type', '');
|
|
607
608
|
if (type.indexOf('candles') >= 0) {
|
|
608
|
-
|
|
609
|
+
this.handleOHLCV(client, message);
|
|
610
|
+
return;
|
|
609
611
|
}
|
|
610
612
|
const method = this.safeValue(methods, type);
|
|
611
613
|
if (method !== undefined) {
|
package/js/src/pro/hitbtc.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { Str, OrderBook, Order, Trade, Ticker, Balances } from '../base/types';
|
|
|
5
5
|
export default class hitbtc extends hitbtcRest {
|
|
6
6
|
describe(): any;
|
|
7
7
|
authenticate(): Promise<any>;
|
|
8
|
-
subscribePublic(name: string, symbols?: Strings, params?: {}): Promise<any>;
|
|
8
|
+
subscribePublic(name: string, messageHashPrefix: string, symbols?: Strings, params?: {}): Promise<any>;
|
|
9
9
|
subscribePrivate(name: string, symbol?: Str, params?: {}): Promise<any>;
|
|
10
10
|
tradeRequest(name: string, params?: {}): Promise<any>;
|
|
11
11
|
watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
|
|
@@ -29,7 +29,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
29
29
|
parseWsOrderTrade(trade: any, market?: any): Trade;
|
|
30
30
|
parseWsOrder(order: any, market?: any): Order;
|
|
31
31
|
watchBalance(params?: {}): Promise<Balances>;
|
|
32
|
-
createOrderWs(symbol: string, type: OrderType, side: OrderSide, amount:
|
|
32
|
+
createOrderWs(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
33
33
|
cancelOrderWs(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
34
34
|
cancelAllOrdersWs(symbol?: Str, params?: {}): Promise<any>;
|
|
35
35
|
fetchOpenOrdersWs(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
package/js/src/pro/hitbtc.js
CHANGED
|
@@ -118,7 +118,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
118
118
|
}
|
|
119
119
|
return future;
|
|
120
120
|
}
|
|
121
|
-
async subscribePublic(name, symbols = undefined, params = {}) {
|
|
121
|
+
async subscribePublic(name, messageHashPrefix, symbols = undefined, params = {}) {
|
|
122
122
|
/**
|
|
123
123
|
* @ignore
|
|
124
124
|
* @method
|
|
@@ -128,7 +128,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
128
128
|
*/
|
|
129
129
|
await this.loadMarkets();
|
|
130
130
|
const url = this.urls['api']['ws']['public'];
|
|
131
|
-
let messageHash =
|
|
131
|
+
let messageHash = messageHashPrefix;
|
|
132
132
|
if (symbols !== undefined) {
|
|
133
133
|
messageHash = messageHash + '::' + symbols.join(',');
|
|
134
134
|
}
|
|
@@ -223,7 +223,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
223
223
|
'symbols': [market['id']],
|
|
224
224
|
},
|
|
225
225
|
};
|
|
226
|
-
const orderbook = await this.subscribePublic(name, [symbol], this.deepExtend(request, params));
|
|
226
|
+
const orderbook = await this.subscribePublic(name, name, [symbol], this.deepExtend(request, params));
|
|
227
227
|
return orderbook.limit();
|
|
228
228
|
}
|
|
229
229
|
handleOrderBook(client, message) {
|
|
@@ -316,7 +316,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
316
316
|
'symbols': [market['id']],
|
|
317
317
|
},
|
|
318
318
|
};
|
|
319
|
-
const result = await this.subscribePublic(name, [symbol], this.deepExtend(request, params));
|
|
319
|
+
const result = await this.subscribePublic(name, 'ticker', [symbol], this.deepExtend(request, params));
|
|
320
320
|
return this.safeValue(result, symbol);
|
|
321
321
|
}
|
|
322
322
|
async watchTickers(symbols = undefined, params = {}) {
|
|
@@ -352,7 +352,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
352
352
|
'symbols': marketIds,
|
|
353
353
|
},
|
|
354
354
|
};
|
|
355
|
-
const tickers = await this.subscribePublic(name, symbols, this.deepExtend(request, params));
|
|
355
|
+
const tickers = await this.subscribePublic(name, 'tickers', symbols, this.deepExtend(request, params));
|
|
356
356
|
if (this.newUpdates) {
|
|
357
357
|
return tickers;
|
|
358
358
|
}
|
|
@@ -411,7 +411,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
411
411
|
const messageHash = channel + '::' + symbol;
|
|
412
412
|
client.resolve(newTickers, messageHash);
|
|
413
413
|
}
|
|
414
|
-
const messageHashes = this.findMessageHashes(client,
|
|
414
|
+
const messageHashes = this.findMessageHashes(client, 'tickers::');
|
|
415
415
|
for (let i = 0; i < messageHashes.length; i++) {
|
|
416
416
|
const messageHash = messageHashes[i];
|
|
417
417
|
const parts = messageHash.split('::');
|
|
@@ -504,7 +504,8 @@ export default class hitbtc extends hitbtcRest {
|
|
|
504
504
|
if (limit !== undefined) {
|
|
505
505
|
request['limit'] = limit;
|
|
506
506
|
}
|
|
507
|
-
const
|
|
507
|
+
const name = 'trades';
|
|
508
|
+
const trades = await this.subscribePublic(name, name, [symbol], this.deepExtend(request, params));
|
|
508
509
|
if (this.newUpdates) {
|
|
509
510
|
limit = trades.getLimit(symbol, limit);
|
|
510
511
|
}
|
|
@@ -633,7 +634,7 @@ export default class hitbtc extends hitbtcRest {
|
|
|
633
634
|
if (limit !== undefined) {
|
|
634
635
|
request['params']['limit'] = limit;
|
|
635
636
|
}
|
|
636
|
-
const ohlcv = await this.subscribePublic(name, [symbol], this.deepExtend(request, params));
|
|
637
|
+
const ohlcv = await this.subscribePublic(name, name, [symbol], this.deepExtend(request, params));
|
|
637
638
|
if (this.newUpdates) {
|
|
638
639
|
limit = ohlcv.getLimit(symbol, limit);
|
|
639
640
|
}
|
package/js/src/pro/hollaex.d.ts
CHANGED
|
@@ -8,9 +8,9 @@ export default class hollaex extends hollaexRest {
|
|
|
8
8
|
watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
9
9
|
handleTrades(client: Client, message: any): void;
|
|
10
10
|
watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
11
|
-
handleMyTrades(client: Client, message: any, subscription?: any):
|
|
11
|
+
handleMyTrades(client: Client, message: any, subscription?: any): void;
|
|
12
12
|
watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
13
|
-
handleOrder(client: Client, message: any, subscription?: any):
|
|
13
|
+
handleOrder(client: Client, message: any, subscription?: any): void;
|
|
14
14
|
watchBalance(params?: {}): Promise<Balances>;
|
|
15
15
|
handleBalance(client: Client, message: any): void;
|
|
16
16
|
watchPublic(messageHash: any, params?: {}): Promise<any>;
|
package/js/src/pro/hollaex.js
CHANGED
|
@@ -221,7 +221,7 @@ export default class hollaex extends hollaexRest {
|
|
|
221
221
|
// when the user does not have any trades yet
|
|
222
222
|
const dataLength = rawTrades.length;
|
|
223
223
|
if (dataLength === 0) {
|
|
224
|
-
return
|
|
224
|
+
return;
|
|
225
225
|
}
|
|
226
226
|
if (this.myTrades === undefined) {
|
|
227
227
|
const limit = this.safeInteger(this.options, 'tradesLimit', 1000);
|
|
@@ -335,7 +335,7 @@ export default class hollaex extends hollaexRest {
|
|
|
335
335
|
// usually the first message is an empty array
|
|
336
336
|
const dataLength = data.length;
|
|
337
337
|
if (dataLength === 0) {
|
|
338
|
-
return
|
|
338
|
+
return;
|
|
339
339
|
}
|
|
340
340
|
if (this.orders === undefined) {
|
|
341
341
|
const limit = this.safeInteger(this.options, 'ordersLimit', 1000);
|
package/js/src/pro/htx.d.ts
CHANGED
|
@@ -28,9 +28,9 @@ export default class htx extends htxRest {
|
|
|
28
28
|
handlePositions(client: any, message: any): void;
|
|
29
29
|
watchBalance(params?: {}): Promise<Balances>;
|
|
30
30
|
handleBalance(client: Client, message: any): void;
|
|
31
|
-
handleSubscriptionStatus(client: Client, message: any):
|
|
31
|
+
handleSubscriptionStatus(client: Client, message: any): void;
|
|
32
32
|
handleSystemStatus(client: Client, message: any): any;
|
|
33
|
-
handleSubject(client: Client, message: any):
|
|
33
|
+
handleSubject(client: Client, message: any): void;
|
|
34
34
|
pong(client: any, message: any): Promise<void>;
|
|
35
35
|
handlePing(client: Client, message: any): void;
|
|
36
36
|
handleAuthenticate(client: Client, message: any): void;
|
package/js/src/pro/htx.js
CHANGED
|
@@ -472,6 +472,7 @@ export default class htx extends htxRest {
|
|
|
472
472
|
delete client.subscriptions[messageHash];
|
|
473
473
|
client.reject(e, messageHash);
|
|
474
474
|
}
|
|
475
|
+
return undefined;
|
|
475
476
|
}
|
|
476
477
|
handleDelta(bookside, delta) {
|
|
477
478
|
const price = this.safeFloat(delta, 0);
|
|
@@ -1692,14 +1693,14 @@ export default class htx extends htxRest {
|
|
|
1692
1693
|
if (subscription !== undefined) {
|
|
1693
1694
|
const method = this.safeValue(subscription, 'method');
|
|
1694
1695
|
if (method !== undefined) {
|
|
1695
|
-
|
|
1696
|
+
method.call(this, client, message, subscription);
|
|
1697
|
+
return;
|
|
1696
1698
|
}
|
|
1697
1699
|
// clean up
|
|
1698
1700
|
if (id in client.subscriptions) {
|
|
1699
1701
|
delete client.subscriptions[id];
|
|
1700
1702
|
}
|
|
1701
1703
|
}
|
|
1702
|
-
return message;
|
|
1703
1704
|
}
|
|
1704
1705
|
handleSystemStatus(client, message) {
|
|
1705
1706
|
//
|
|
@@ -1808,11 +1809,9 @@ export default class htx extends htxRest {
|
|
|
1808
1809
|
'kline': this.handleOHLCV,
|
|
1809
1810
|
};
|
|
1810
1811
|
const method = this.safeValue(methods, methodName);
|
|
1811
|
-
if (method
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
else {
|
|
1815
|
-
return method.call(this, client, message);
|
|
1812
|
+
if (method !== undefined) {
|
|
1813
|
+
method.call(this, client, message);
|
|
1814
|
+
return;
|
|
1816
1815
|
}
|
|
1817
1816
|
}
|
|
1818
1817
|
// private spot subjects
|
package/js/src/pro/huobijp.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export default class huobijp extends huobijpRest {
|
|
|
20
20
|
handleOrderBookSubscription(client: Client, message: any, subscription: any): void;
|
|
21
21
|
handleSubscriptionStatus(client: Client, message: any): any;
|
|
22
22
|
handleSystemStatus(client: Client, message: any): any;
|
|
23
|
-
handleSubject(client: Client, message: any):
|
|
23
|
+
handleSubject(client: Client, message: any): void;
|
|
24
24
|
pong(client: any, message: any): Promise<void>;
|
|
25
25
|
handlePing(client: Client, message: any): void;
|
|
26
26
|
handleErrorMessage(client: Client, message: any): any;
|
package/js/src/pro/huobijp.js
CHANGED
|
@@ -364,6 +364,7 @@ export default class huobijp extends huobijpRest {
|
|
|
364
364
|
delete client.subscriptions[messageHash];
|
|
365
365
|
client.reject(e, messageHash);
|
|
366
366
|
}
|
|
367
|
+
return undefined;
|
|
367
368
|
}
|
|
368
369
|
handleDelta(bookside, delta) {
|
|
369
370
|
const price = this.safeFloat(delta, 0);
|
|
@@ -529,11 +530,8 @@ export default class huobijp extends huobijpRest {
|
|
|
529
530
|
// ...
|
|
530
531
|
};
|
|
531
532
|
const method = this.safeValue(methods, methodName);
|
|
532
|
-
if (method
|
|
533
|
-
|
|
534
|
-
}
|
|
535
|
-
else {
|
|
536
|
-
return method.call(this, client, message);
|
|
533
|
+
if (method !== undefined) {
|
|
534
|
+
method.call(this, client, message);
|
|
537
535
|
}
|
|
538
536
|
}
|
|
539
537
|
}
|
package/js/src/pro/idex.js
CHANGED
|
@@ -327,7 +327,7 @@ export default class idex extends idexRest {
|
|
|
327
327
|
const symbol = this.safeSymbol(marketId);
|
|
328
328
|
if (!(symbol in this.orderbooks)) {
|
|
329
329
|
const orderbook = this.countedOrderBook({});
|
|
330
|
-
orderbook.cache = [];
|
|
330
|
+
// orderbook.cache = []; // cache is never used?
|
|
331
331
|
this.orderbooks[symbol] = orderbook;
|
|
332
332
|
}
|
|
333
333
|
this.spawn(this.fetchOrderBookSnapshot, client, symbol);
|
|
@@ -13,5 +13,5 @@ export default class independentreserve extends independentreserveRest {
|
|
|
13
13
|
handleDeltas(bookside: any, deltas: any): void;
|
|
14
14
|
handleHeartbeat(client: Client, message: any): any;
|
|
15
15
|
handleSubscriptions(client: Client, message: any): any;
|
|
16
|
-
handleMessage(client: Client, message: any):
|
|
16
|
+
handleMessage(client: Client, message: any): void;
|
|
17
17
|
}
|