ccxt 4.3.28 → 4.3.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/README.md +3 -3
  2. package/dist/ccxt.browser.min.js +30 -0
  3. package/dist/ccxt.browser.min.js.LICENSE.txt +12 -0
  4. package/dist/cjs/ccxt.js +1 -1
  5. package/dist/cjs/src/base/ws/OrderBookSide.js +4 -4
  6. package/dist/cjs/src/bingx.js +97 -83
  7. package/dist/cjs/src/bitmart.js +72 -0
  8. package/dist/cjs/src/kucoin.js +1 -0
  9. package/dist/cjs/src/pro/bitfinex.js +4 -4
  10. package/dist/cjs/src/pro/bitfinex2.js +2 -2
  11. package/dist/cjs/src/pro/bitmex.js +3 -3
  12. package/dist/cjs/src/pro/blockchaincom.js +2 -2
  13. package/dist/cjs/src/pro/cryptocom.js +4 -4
  14. package/dist/cjs/src/pro/deribit.js +9 -9
  15. package/dist/cjs/src/pro/idex.js +1 -1
  16. package/dist/cjs/src/pro/luno.js +4 -5
  17. package/dist/cjs/src/pro/mexc.js +2 -2
  18. package/dist/cjs/src/whitebit.js +1 -1
  19. package/js/ccxt.d.ts +1 -1
  20. package/js/ccxt.js +1 -1
  21. package/js/src/abstract/bingx.d.ts +7 -0
  22. package/js/src/abstract/bitmart.d.ts +1 -0
  23. package/js/src/base/ws/Cache.d.ts +1 -1
  24. package/js/src/base/ws/OrderBookSide.d.ts +4 -5
  25. package/js/src/base/ws/OrderBookSide.js +4 -4
  26. package/js/src/bingx.js +97 -83
  27. package/js/src/bitmart.d.ts +2 -1
  28. package/js/src/bitmart.js +72 -0
  29. package/js/src/kucoin.js +1 -0
  30. package/js/src/pro/bitfinex.js +4 -4
  31. package/js/src/pro/bitfinex2.js +2 -2
  32. package/js/src/pro/bitmex.js +3 -3
  33. package/js/src/pro/blockchaincom.js +2 -2
  34. package/js/src/pro/cryptocom.js +4 -4
  35. package/js/src/pro/deribit.js +9 -9
  36. package/js/src/pro/idex.js +1 -1
  37. package/js/src/pro/luno.js +4 -5
  38. package/js/src/pro/mexc.js +2 -2
  39. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +1 -1
  40. package/js/src/whitebit.js +1 -1
  41. package/package.json +2 -2
@@ -1435,7 +1435,7 @@ export default class bitmex extends bitmexRest {
1435
1435
  const data = this.safeValue(message, 'data', []);
1436
1436
  // if it's an initial snapshot
1437
1437
  if (action === 'partial') {
1438
- const filter = this.safeValue(message, 'filter', {});
1438
+ const filter = this.safeDict(message, 'filter', {});
1439
1439
  const marketId = this.safeValue(filter, 'symbol');
1440
1440
  const market = this.safeMarket(marketId);
1441
1441
  const symbol = market['symbol'];
@@ -1457,7 +1457,7 @@ export default class bitmex extends bitmexRest {
1457
1457
  let side = this.safeString(data[i], 'side');
1458
1458
  side = (side === 'Buy') ? 'bids' : 'asks';
1459
1459
  const bookside = orderbook[side];
1460
- bookside.store(price, size, id);
1460
+ bookside.storeArray([price, size, id]);
1461
1461
  const datetime = this.safeString(data[i], 'timestamp');
1462
1462
  orderbook['timestamp'] = this.parse8601(datetime);
1463
1463
  orderbook['datetime'] = datetime;
@@ -1482,7 +1482,7 @@ export default class bitmex extends bitmexRest {
1482
1482
  let side = this.safeString(data[i], 'side');
1483
1483
  side = (side === 'Buy') ? 'bids' : 'asks';
1484
1484
  const bookside = orderbook[side];
1485
- bookside.store(price, size, id);
1485
+ bookside.storeArray([price, size, id]);
1486
1486
  const datetime = this.safeString(data[i], 'timestamp');
1487
1487
  orderbook['timestamp'] = this.parse8601(datetime);
1488
1488
  orderbook['datetime'] = datetime;
@@ -698,8 +698,8 @@ export default class blockchaincom extends blockchaincomRest {
698
698
  orderbook.reset(snapshot);
699
699
  }
700
700
  else if (event === 'updated') {
701
- const asks = this.safeValue(message, 'asks', []);
702
- const bids = this.safeValue(message, 'bids', []);
701
+ const asks = this.safeList(message, 'asks', []);
702
+ const bids = this.safeList(message, 'bids', []);
703
703
  this.handleDeltas(orderbook['asks'], asks);
704
704
  this.handleDeltas(orderbook['bids'], bids);
705
705
  orderbook['timestamp'] = timestamp;
@@ -131,7 +131,7 @@ export default class cryptocom extends cryptocomRest {
131
131
  const price = this.safeFloat(delta, 0);
132
132
  const amount = this.safeFloat(delta, 1);
133
133
  const count = this.safeInteger(delta, 2);
134
- bookside.store(price, amount, count);
134
+ bookside.storeArray([price, amount, count]);
135
135
  }
136
136
  handleDeltas(bookside, deltas) {
137
137
  for (let i = 0; i < deltas.length; i++) {
@@ -200,11 +200,11 @@ export default class cryptocom extends cryptocomRest {
200
200
  let data = this.safeValue(message, 'data');
201
201
  data = this.safeValue(data, 0);
202
202
  const timestamp = this.safeInteger(data, 't');
203
- let orderbook = this.safeValue(this.orderbooks, symbol);
204
- if (orderbook === undefined) {
203
+ if (!(symbol in this.orderbooks)) {
205
204
  const limit = this.safeInteger(message, 'depth');
206
- orderbook = this.countedOrderBook({}, limit);
205
+ this.orderbooks[symbol] = this.countedOrderBook({}, limit);
207
206
  }
207
+ const orderbook = this.orderbooks[symbol];
208
208
  const channel = this.safeString(message, 'channel');
209
209
  const nonce = this.safeInteger2(data, 'u', 's');
210
210
  let books = data;
@@ -510,12 +510,12 @@ export default class deribit extends deribitRest {
510
510
  const marketId = this.safeString(data, 'instrument_name');
511
511
  const symbol = this.safeSymbol(marketId);
512
512
  const timestamp = this.safeInteger(data, 'timestamp');
513
- let storedOrderBook = this.safeValue(this.orderbooks, symbol);
514
- if (storedOrderBook === undefined) {
515
- storedOrderBook = this.countedOrderBook();
513
+ if (!(symbol in this.orderbooks)) {
514
+ this.orderbooks[symbol] = this.countedOrderBook();
516
515
  }
517
- const asks = this.safeValue(data, 'asks', []);
518
- const bids = this.safeValue(data, 'bids', []);
516
+ const storedOrderBook = this.orderbooks[symbol];
517
+ const asks = this.safeList(data, 'asks', []);
518
+ const bids = this.safeList(data, 'bids', []);
519
519
  this.handleDeltas(storedOrderBook['asks'], asks);
520
520
  this.handleDeltas(storedOrderBook['bids'], bids);
521
521
  storedOrderBook['nonce'] = timestamp;
@@ -527,8 +527,8 @@ export default class deribit extends deribitRest {
527
527
  client.resolve(storedOrderBook, messageHash);
528
528
  }
529
529
  cleanOrderBook(data) {
530
- const bids = this.safeValue(data, 'bids', []);
531
- const asks = this.safeValue(data, 'asks', []);
530
+ const bids = this.safeList(data, 'bids', []);
531
+ const asks = this.safeList(data, 'asks', []);
532
532
  const cleanedBids = [];
533
533
  for (let i = 0; i < bids.length; i++) {
534
534
  cleanedBids.push([bids[i][1], bids[i][2]]);
@@ -545,10 +545,10 @@ export default class deribit extends deribitRest {
545
545
  const price = delta[1];
546
546
  const amount = delta[2];
547
547
  if (delta[0] === 'new' || delta[0] === 'change') {
548
- bookside.store(price, amount, 1);
548
+ bookside.storeArray([price, amount, 1]);
549
549
  }
550
550
  else if (delta[0] === 'delete') {
551
- bookside.store(price, amount, 0);
551
+ bookside.storeArray([price, amount, 0]);
552
552
  }
553
553
  }
554
554
  handleDeltas(bookside, deltas) {
@@ -484,7 +484,7 @@ export default class idex extends idexRest {
484
484
  const price = this.safeFloat(delta, 0);
485
485
  const amount = this.safeFloat(delta, 1);
486
486
  const count = this.safeInteger(delta, 2);
487
- bookside.store(price, amount, count);
487
+ bookside.storeArray([price, amount, count]);
488
488
  }
489
489
  handleDeltas(bookside, deltas) {
490
490
  for (let i = 0; i < deltas.length; i++) {
@@ -193,12 +193,11 @@ export default class luno extends lunoRest {
193
193
  //
194
194
  const symbol = subscription['symbol'];
195
195
  const messageHash = 'orderbook:' + symbol;
196
- const timestamp = this.safeString(message, 'timestamp');
197
- let orderbook = this.safeValue(this.orderbooks, symbol);
198
- if (orderbook === undefined) {
199
- orderbook = this.indexedOrderBook({});
200
- this.orderbooks[symbol] = orderbook;
196
+ const timestamp = this.safeInteger(message, 'timestamp');
197
+ if (!(symbol in this.orderbooks)) {
198
+ this.orderbooks[symbol] = this.indexedOrderBook({});
201
199
  }
200
+ const orderbook = this.orderbooks[symbol];
202
201
  const asks = this.safeValue(message, 'asks');
203
202
  if (asks !== undefined) {
204
203
  const snapshot = this.customParseOrderBook(message, symbol, timestamp, 'bids', 'asks', 'price', 'volume', 'id');
@@ -511,8 +511,8 @@ export default class mexc extends mexcRest {
511
511
  return;
512
512
  }
513
513
  orderbook['nonce'] = deltaNonce;
514
- const asks = this.safeValue(delta, 'asks', []);
515
- const bids = this.safeValue(delta, 'bids', []);
514
+ const asks = this.safeList(delta, 'asks', []);
515
+ const bids = this.safeList(delta, 'bids', []);
516
516
  const asksOrderSide = orderbook['asks'];
517
517
  const bidsOrderSide = orderbook['bids'];
518
518
  this.handleBooksideDelta(asksOrderSide, asks);
@@ -15,7 +15,7 @@ export declare class BigInteger {
15
15
  protected intValue(): number;
16
16
  protected byteValue(): number;
17
17
  protected shortValue(): number;
18
- protected signum(): 1 | 0 | -1;
18
+ protected signum(): 0 | 1 | -1;
19
19
  toByteArray(): number[];
20
20
  protected equals(a: BigInteger): boolean;
21
21
  protected min(a: BigInteger): BigInteger;
@@ -1473,7 +1473,7 @@ export default class whitebit extends Exchange {
1473
1473
  const balance = response[id];
1474
1474
  if (typeof balance === 'object' && balance !== undefined) {
1475
1475
  const account = this.account();
1476
- account['free'] = this.safeString(balance, 'available');
1476
+ account['free'] = this.safeString2(balance, 'available', 'main_balance');
1477
1477
  account['used'] = this.safeString(balance, 'freeze');
1478
1478
  account['total'] = this.safeString(balance, 'main_balance');
1479
1479
  result[code] = account;
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "ccxt",
3
- "version": "4.3.28",
3
+ "version": "4.3.29",
4
4
  "description": "A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 100+ exchanges",
5
- "unpkg": "dist/ccxt.browser.js",
5
+ "unpkg": "dist/ccxt.browser.min.js",
6
6
  "type": "module",
7
7
  "exports": {
8
8
  ".": {