ccxt 4.2.60 → 4.2.62

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 (160) hide show
  1. package/README.md +6 -5
  2. package/build.sh +1 -1
  3. package/dist/ccxt.browser.js +11280 -3407
  4. package/dist/ccxt.browser.min.js +7 -7
  5. package/dist/cjs/ccxt.js +4 -1
  6. package/dist/cjs/src/abstract/hyperliquid.js +9 -0
  7. package/dist/cjs/src/base/Exchange.js +22 -1
  8. package/dist/cjs/src/base/functions/encode.js +5 -0
  9. package/dist/cjs/src/base/functions.js +1 -0
  10. package/dist/cjs/src/bitfinex2.js +1 -1
  11. package/dist/cjs/src/bitget.js +74 -23
  12. package/dist/cjs/src/coinbase.js +108 -103
  13. package/dist/cjs/src/coinex.js +61 -1
  14. package/dist/cjs/src/hyperliquid.js +2035 -0
  15. package/dist/cjs/src/kraken.js +8 -2
  16. package/dist/cjs/src/krakenfutures.js +28 -0
  17. package/dist/cjs/src/kucoinfutures.js +2 -2
  18. package/dist/cjs/src/okx.js +1 -1
  19. package/dist/cjs/src/phemex.js +2 -2
  20. package/dist/cjs/src/pro/bingx.js +1 -0
  21. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +158 -0
  22. package/dist/cjs/src/static_dependencies/ethers/address/address.js +144 -0
  23. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +407 -0
  24. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +45 -0
  25. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +28 -0
  26. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +176 -0
  27. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +27 -0
  28. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +52 -0
  29. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +45 -0
  30. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +30 -0
  31. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +60 -0
  32. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +27 -0
  33. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +68 -0
  34. package/dist/cjs/src/static_dependencies/ethers/fragments.js +614 -0
  35. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +492 -0
  36. package/dist/cjs/src/static_dependencies/ethers/index.js +35 -0
  37. package/dist/cjs/src/static_dependencies/ethers/interface.js +44 -0
  38. package/dist/cjs/src/static_dependencies/ethers/typed.js +618 -0
  39. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +20 -0
  40. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +134 -0
  41. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +228 -0
  42. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +13 -0
  43. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +29 -0
  44. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +53 -0
  45. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +231 -0
  46. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +47 -0
  47. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +218 -0
  48. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +292 -0
  49. package/dist/cjs/src/tokocrypto.js +22 -2
  50. package/dist/cjs/src/wazirx.js +308 -3
  51. package/js/ccxt.d.ts +5 -2
  52. package/js/ccxt.js +4 -2
  53. package/js/src/abstract/coinbase.d.ts +3 -3
  54. package/js/src/abstract/hyperliquid.d.ts +9 -0
  55. package/js/src/abstract/hyperliquid.js +11 -0
  56. package/js/src/base/Exchange.d.ts +4 -0
  57. package/js/src/base/Exchange.js +13 -1
  58. package/js/src/base/functions/encode.d.ts +2 -1
  59. package/js/src/base/functions/encode.js +5 -1
  60. package/js/src/bitfinex2.js +1 -1
  61. package/js/src/bitget.js +74 -23
  62. package/js/src/coinbase.js +108 -103
  63. package/js/src/coinex.d.ts +3 -1
  64. package/js/src/coinex.js +61 -1
  65. package/js/src/hyperliquid.d.ts +83 -0
  66. package/js/src/hyperliquid.js +2036 -0
  67. package/js/src/kraken.js +8 -2
  68. package/js/src/krakenfutures.d.ts +2 -1
  69. package/js/src/krakenfutures.js +28 -0
  70. package/js/src/kucoinfutures.js +2 -2
  71. package/js/src/okx.js +1 -1
  72. package/js/src/phemex.js +2 -2
  73. package/js/src/pro/bingx.js +1 -0
  74. package/js/src/static_dependencies/ethers/abi-coder.d.ts +50 -0
  75. package/js/src/static_dependencies/ethers/abi-coder.js +148 -0
  76. package/js/src/static_dependencies/ethers/address/address.d.ts +55 -0
  77. package/js/src/static_dependencies/ethers/address/address.js +162 -0
  78. package/js/src/static_dependencies/ethers/address/checks.d.ts +80 -0
  79. package/js/src/static_dependencies/ethers/address/checks.js +119 -0
  80. package/js/src/static_dependencies/ethers/address/contract-address.d.ts +47 -0
  81. package/js/src/static_dependencies/ethers/address/contract-address.js +73 -0
  82. package/js/src/static_dependencies/ethers/address/index.d.ts +48 -0
  83. package/js/src/static_dependencies/ethers/address/index.js +24 -0
  84. package/js/src/static_dependencies/ethers/bytes32.d.ts +14 -0
  85. package/js/src/static_dependencies/ethers/bytes32.js +45 -0
  86. package/js/src/static_dependencies/ethers/coders/abstract-coder.d.ts +120 -0
  87. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +424 -0
  88. package/js/src/static_dependencies/ethers/coders/address.d.ts +12 -0
  89. package/js/src/static_dependencies/ethers/coders/address.js +34 -0
  90. package/js/src/static_dependencies/ethers/coders/anonymous.d.ts +14 -0
  91. package/js/src/static_dependencies/ethers/coders/anonymous.js +27 -0
  92. package/js/src/static_dependencies/ethers/coders/array.d.ts +24 -0
  93. package/js/src/static_dependencies/ethers/coders/array.js +162 -0
  94. package/js/src/static_dependencies/ethers/coders/boolean.d.ts +12 -0
  95. package/js/src/static_dependencies/ethers/coders/boolean.js +26 -0
  96. package/js/src/static_dependencies/ethers/coders/bytes.d.ts +18 -0
  97. package/js/src/static_dependencies/ethers/coders/bytes.js +39 -0
  98. package/js/src/static_dependencies/ethers/coders/fixed-bytes.d.ts +14 -0
  99. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +32 -0
  100. package/js/src/static_dependencies/ethers/coders/null.d.ts +11 -0
  101. package/js/src/static_dependencies/ethers/coders/null.js +29 -0
  102. package/js/src/static_dependencies/ethers/coders/number.d.ts +15 -0
  103. package/js/src/static_dependencies/ethers/coders/number.js +48 -0
  104. package/js/src/static_dependencies/ethers/coders/string.d.ts +12 -0
  105. package/js/src/static_dependencies/ethers/coders/string.js +26 -0
  106. package/js/src/static_dependencies/ethers/coders/tuple.d.ts +15 -0
  107. package/js/src/static_dependencies/ethers/coders/tuple.js +67 -0
  108. package/js/src/static_dependencies/ethers/fragments.d.ts +458 -0
  109. package/js/src/static_dependencies/ethers/fragments.js +1252 -0
  110. package/js/src/static_dependencies/ethers/hash/index.d.ts +10 -0
  111. package/js/src/static_dependencies/ethers/hash/index.js +15 -0
  112. package/js/src/static_dependencies/ethers/hash/solidity.d.ts +30 -0
  113. package/js/src/static_dependencies/ethers/hash/solidity.js +107 -0
  114. package/js/src/static_dependencies/ethers/hash/typed-data.d.ts +144 -0
  115. package/js/src/static_dependencies/ethers/hash/typed-data.js +490 -0
  116. package/js/src/static_dependencies/ethers/index.d.ts +19 -0
  117. package/js/src/static_dependencies/ethers/index.js +22 -0
  118. package/js/src/static_dependencies/ethers/interface.d.ts +380 -0
  119. package/js/src/static_dependencies/ethers/interface.js +990 -0
  120. package/js/src/static_dependencies/ethers/typed.d.ts +569 -0
  121. package/js/src/static_dependencies/ethers/typed.js +608 -0
  122. package/js/src/static_dependencies/ethers/utils/base58.d.ts +22 -0
  123. package/js/src/static_dependencies/ethers/utils/base58.js +68 -0
  124. package/js/src/static_dependencies/ethers/utils/base64-browser.d.ts +3 -0
  125. package/js/src/static_dependencies/ethers/utils/base64-browser.js +24 -0
  126. package/js/src/static_dependencies/ethers/utils/base64.d.ts +39 -0
  127. package/js/src/static_dependencies/ethers/utils/base64.js +58 -0
  128. package/js/src/static_dependencies/ethers/utils/data.d.ts +92 -0
  129. package/js/src/static_dependencies/ethers/utils/data.js +175 -0
  130. package/js/src/static_dependencies/ethers/utils/errors.d.ts +509 -0
  131. package/js/src/static_dependencies/ethers/utils/errors.js +227 -0
  132. package/js/src/static_dependencies/ethers/utils/events.d.ts +76 -0
  133. package/js/src/static_dependencies/ethers/utils/events.js +52 -0
  134. package/js/src/static_dependencies/ethers/utils/fixednumber.d.ts +251 -0
  135. package/js/src/static_dependencies/ethers/utils/fixednumber.js +529 -0
  136. package/js/src/static_dependencies/ethers/utils/index.d.ts +30 -0
  137. package/js/src/static_dependencies/ethers/utils/index.js +38 -0
  138. package/js/src/static_dependencies/ethers/utils/maths.d.ts +65 -0
  139. package/js/src/static_dependencies/ethers/utils/maths.js +220 -0
  140. package/js/src/static_dependencies/ethers/utils/properties.d.ts +22 -0
  141. package/js/src/static_dependencies/ethers/utils/properties.js +59 -0
  142. package/js/src/static_dependencies/ethers/utils/rlp-decode.d.ts +5 -0
  143. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +84 -0
  144. package/js/src/static_dependencies/ethers/utils/rlp-encode.d.ts +5 -0
  145. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +54 -0
  146. package/js/src/static_dependencies/ethers/utils/rlp.d.ts +16 -0
  147. package/js/src/static_dependencies/ethers/utils/rlp.js +14 -0
  148. package/js/src/static_dependencies/ethers/utils/units.d.ts +23 -0
  149. package/js/src/static_dependencies/ethers/utils/units.js +88 -0
  150. package/js/src/static_dependencies/ethers/utils/utf8.d.ts +95 -0
  151. package/js/src/static_dependencies/ethers/utils/utf8.js +225 -0
  152. package/js/src/static_dependencies/ethers/utils/uuid.d.ts +7 -0
  153. package/js/src/static_dependencies/ethers/utils/uuid.js +35 -0
  154. package/js/src/static_dependencies/messagepack/msgpack.d.ts +2 -0
  155. package/js/src/static_dependencies/messagepack/msgpack.js +572 -0
  156. package/js/src/tokocrypto.js +22 -2
  157. package/js/src/wazirx.d.ts +12 -1
  158. package/js/src/wazirx.js +308 -3
  159. package/package.json +1 -1
  160. package/skip-tests.json +18 -0
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('../utils/base58.js');
6
+ var data = require('../utils/data.js');
7
+ require('../utils/errors.js');
8
+ require('../utils/events.js');
9
+ require('../utils/fixednumber.js');
10
+ require('../utils/maths.js');
11
+ require('../utils/utf8.js');
12
+ require('../../../base/functions/platform.js');
13
+ require('../../../base/functions/encode.js');
14
+ require('../../../base/functions/crypto.js');
15
+ require('../../noble-hashes/sha3.js');
16
+ require('../../noble-hashes/sha256.js');
17
+ var abstractCoder = require('./abstract-coder.js');
18
+
19
+ /**
20
+ * @_ignore
21
+ */
22
+ class DynamicBytesCoder extends abstractCoder.Coder {
23
+ constructor(type, localName) {
24
+ super(type, type, localName, true);
25
+ }
26
+ defaultValue() {
27
+ return "0x";
28
+ }
29
+ encode(writer, value) {
30
+ value = data.getBytesCopy(value);
31
+ let length = writer.writeValue(value.length);
32
+ length += writer.writeBytes(value);
33
+ return length;
34
+ }
35
+ decode(reader) {
36
+ return reader.readBytes(reader.readIndex(), true);
37
+ }
38
+ }
39
+ /**
40
+ * @_ignore
41
+ */
42
+ class BytesCoder extends DynamicBytesCoder {
43
+ constructor(localName) {
44
+ super("bytes", localName);
45
+ }
46
+ decode(reader) {
47
+ return data.hexlify(super.decode(reader));
48
+ }
49
+ }
50
+
51
+ exports.BytesCoder = BytesCoder;
52
+ exports.DynamicBytesCoder = DynamicBytesCoder;
@@ -0,0 +1,45 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('../utils/base58.js');
6
+ var data = require('../utils/data.js');
7
+ require('../utils/errors.js');
8
+ require('../utils/events.js');
9
+ require('../utils/fixednumber.js');
10
+ require('../utils/maths.js');
11
+ var properties = require('../utils/properties.js');
12
+ require('../utils/utf8.js');
13
+ require('../../../base/functions/platform.js');
14
+ require('../../../base/functions/encode.js');
15
+ require('../../../base/functions/crypto.js');
16
+ require('../../noble-hashes/sha3.js');
17
+ require('../../noble-hashes/sha256.js');
18
+ var typed = require('../typed.js');
19
+ var abstractCoder = require('./abstract-coder.js');
20
+
21
+ /**
22
+ * @_ignore
23
+ */
24
+ class FixedBytesCoder extends abstractCoder.Coder {
25
+ constructor(size, localName) {
26
+ let name = "bytes" + String(size);
27
+ super(name, name, localName, false);
28
+ properties.defineProperties(this, { size }, { size: "number" });
29
+ }
30
+ defaultValue() {
31
+ return ("0x0000000000000000000000000000000000000000000000000000000000000000").substring(0, 2 + this.size * 2);
32
+ }
33
+ encode(writer, _value) {
34
+ let data$1 = data.getBytesCopy(typed.Typed.dereference(_value, this.type));
35
+ if (data$1.length !== this.size) {
36
+ this._throwError("incorrect data length", _value);
37
+ }
38
+ return writer.writeBytes(data$1);
39
+ }
40
+ decode(reader) {
41
+ return data.hexlify(reader.readBytes(this.size));
42
+ }
43
+ }
44
+
45
+ exports.FixedBytesCoder = FixedBytesCoder;
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var abstractCoder = require('./abstract-coder.js');
6
+
7
+ const Empty = new Uint8Array([]);
8
+ /**
9
+ * @_ignore
10
+ */
11
+ class NullCoder extends abstractCoder.Coder {
12
+ constructor(localName) {
13
+ super("null", "", localName, false);
14
+ }
15
+ defaultValue() {
16
+ return null;
17
+ }
18
+ encode(writer, value) {
19
+ if (value != null) {
20
+ this._throwError("not null", value);
21
+ }
22
+ return writer.writeBytes(Empty);
23
+ }
24
+ decode(reader) {
25
+ reader.readBytes(0);
26
+ return null;
27
+ }
28
+ }
29
+
30
+ exports.NullCoder = NullCoder;
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('../utils/base58.js');
6
+ require('../utils/errors.js');
7
+ require('../utils/events.js');
8
+ require('../utils/fixednumber.js');
9
+ var maths = require('../utils/maths.js');
10
+ var properties = require('../utils/properties.js');
11
+ require('../utils/utf8.js');
12
+ require('../../../base/functions/platform.js');
13
+ require('../../../base/functions/encode.js');
14
+ require('../../../base/functions/crypto.js');
15
+ require('../../noble-hashes/sha3.js');
16
+ require('../../noble-hashes/sha256.js');
17
+ var typed = require('../typed.js');
18
+ var abstractCoder = require('./abstract-coder.js');
19
+
20
+ const BN_0 = BigInt(0);
21
+ const BN_1 = BigInt(1);
22
+ const BN_MAX_UINT256 = BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");
23
+ /**
24
+ * @_ignore
25
+ */
26
+ class NumberCoder extends abstractCoder.Coder {
27
+ constructor(size, signed, localName) {
28
+ const name = ((signed ? "int" : "uint") + (size * 8));
29
+ super(name, name, localName, false);
30
+ properties.defineProperties(this, { size, signed }, { size: "number", signed: "boolean" });
31
+ }
32
+ defaultValue() {
33
+ return 0;
34
+ }
35
+ encode(writer, _value) {
36
+ let value = maths.getBigInt(typed.Typed.dereference(_value, this.type));
37
+ // Check bounds are safe for encoding
38
+ let maxUintValue = maths.mask(BN_MAX_UINT256, abstractCoder.WordSize * 8);
39
+ if (this.signed) {
40
+ let bounds = maths.mask(maxUintValue, (this.size * 8) - 1);
41
+ if (value > bounds || value < -(bounds + BN_1)) {
42
+ this._throwError("value out-of-bounds", _value);
43
+ }
44
+ value = maths.toTwos(value, 8 * abstractCoder.WordSize);
45
+ }
46
+ else if (value < BN_0 || value > maths.mask(maxUintValue, this.size * 8)) {
47
+ this._throwError("value out-of-bounds", _value);
48
+ }
49
+ return writer.writeValue(value);
50
+ }
51
+ decode(reader) {
52
+ let value = maths.mask(reader.readValue(), this.size * 8);
53
+ if (this.signed) {
54
+ value = maths.fromTwos(value, this.size * 8);
55
+ }
56
+ return value;
57
+ }
58
+ }
59
+
60
+ exports.NumberCoder = NumberCoder;
@@ -0,0 +1,27 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var utf8 = require('../utils/utf8.js');
6
+ var typed = require('../typed.js');
7
+ var bytes = require('./bytes.js');
8
+
9
+ /**
10
+ * @_ignore
11
+ */
12
+ class StringCoder extends bytes.DynamicBytesCoder {
13
+ constructor(localName) {
14
+ super("string", localName);
15
+ }
16
+ defaultValue() {
17
+ return "";
18
+ }
19
+ encode(writer, _value) {
20
+ return super.encode(writer, utf8.toUtf8Bytes(typed.Typed.dereference(_value, "string")));
21
+ }
22
+ decode(reader) {
23
+ return utf8.toUtf8String(super.decode(reader));
24
+ }
25
+ }
26
+
27
+ exports.StringCoder = StringCoder;
@@ -0,0 +1,68 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var properties = require('../utils/properties.js');
6
+ var typed = require('../typed.js');
7
+ var abstractCoder = require('./abstract-coder.js');
8
+ var array = require('./array.js');
9
+
10
+ /**
11
+ * @_ignore
12
+ */
13
+ class TupleCoder extends abstractCoder.Coder {
14
+ constructor(coders, localName) {
15
+ let dynamic = false;
16
+ const types = [];
17
+ coders.forEach((coder) => {
18
+ if (coder.dynamic) {
19
+ dynamic = true;
20
+ }
21
+ types.push(coder.type);
22
+ });
23
+ const type = ("tuple(" + types.join(",") + ")");
24
+ super("tuple", type, localName, dynamic);
25
+ properties.defineProperties(this, { coders: Object.freeze(coders.slice()) });
26
+ }
27
+ defaultValue() {
28
+ const values = [];
29
+ this.coders.forEach((coder) => {
30
+ values.push(coder.defaultValue());
31
+ });
32
+ // We only output named properties for uniquely named coders
33
+ const uniqueNames = this.coders.reduce((accum, coder) => {
34
+ const name = coder.localName;
35
+ if (name) {
36
+ if (!accum[name]) {
37
+ accum[name] = 0;
38
+ }
39
+ accum[name]++;
40
+ }
41
+ return accum;
42
+ }, {});
43
+ // Add named values
44
+ this.coders.forEach((coder, index) => {
45
+ let name = coder.localName;
46
+ if (!name || uniqueNames[name] !== 1) {
47
+ return;
48
+ }
49
+ if (name === "length") {
50
+ name = "_length";
51
+ }
52
+ if (values[name] != null) {
53
+ return;
54
+ }
55
+ values[name] = values[index];
56
+ });
57
+ return Object.freeze(values);
58
+ }
59
+ encode(writer, _value) {
60
+ const value = typed.Typed.dereference(_value, "tuple");
61
+ return array.pack(writer, this.coders, value);
62
+ }
63
+ decode(reader) {
64
+ return array.unpack(reader, this.coders);
65
+ }
66
+ }
67
+
68
+ exports.TupleCoder = TupleCoder;