@nktkas/hyperliquid 0.17.3 → 0.17.4

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 (50) hide show
  1. package/README.md +1 -0
  2. package/{script/deps/jsr.io/@noble/hashes/1.7.1 → esm/deps/jsr.io/@noble/hashes/1.8.0}/src/_u64.d.ts +1 -1
  3. package/esm/deps/jsr.io/@noble/hashes/1.8.0/src/_u64.d.ts.map +1 -0
  4. package/esm/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/_u64.js +5 -4
  5. package/esm/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/crypto.d.ts.map +1 -1
  6. package/esm/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/sha3.d.ts +6 -5
  7. package/esm/deps/jsr.io/@noble/hashes/1.8.0/src/sha3.d.ts.map +1 -0
  8. package/esm/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/sha3.js +63 -52
  9. package/{script/deps/jsr.io/@noble/hashes/1.7.1 → esm/deps/jsr.io/@noble/hashes/1.8.0}/src/utils.d.ts +60 -19
  10. package/esm/deps/jsr.io/@noble/hashes/1.8.0/src/utils.d.ts.map +1 -0
  11. package/esm/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/utils.js +94 -25
  12. package/esm/src/signing.js +1 -1
  13. package/esm/src/transports/http/http_transport.d.ts +69 -8
  14. package/esm/src/transports/http/http_transport.d.ts.map +1 -1
  15. package/esm/src/transports/http/http_transport.js +57 -10
  16. package/esm/src/types/info/assets.d.ts +2 -0
  17. package/esm/src/types/info/assets.d.ts.map +1 -1
  18. package/package.json +1 -1
  19. package/{esm/deps/jsr.io/@noble/hashes/1.7.1 → script/deps/jsr.io/@noble/hashes/1.8.0}/src/_u64.d.ts +1 -1
  20. package/script/deps/jsr.io/@noble/hashes/1.8.0/src/_u64.d.ts.map +1 -0
  21. package/script/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/_u64.js +6 -5
  22. package/script/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/crypto.d.ts.map +1 -1
  23. package/script/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/sha3.d.ts +6 -5
  24. package/script/deps/jsr.io/@noble/hashes/1.8.0/src/sha3.d.ts.map +1 -0
  25. package/script/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/sha3.js +69 -58
  26. package/{esm/deps/jsr.io/@noble/hashes/1.7.1 → script/deps/jsr.io/@noble/hashes/1.8.0}/src/utils.d.ts +60 -19
  27. package/script/deps/jsr.io/@noble/hashes/1.8.0/src/utils.d.ts.map +1 -0
  28. package/script/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/utils.js +111 -34
  29. package/script/src/signing.js +2 -2
  30. package/script/src/transports/http/http_transport.d.ts +69 -8
  31. package/script/src/transports/http/http_transport.d.ts.map +1 -1
  32. package/script/src/transports/http/http_transport.js +57 -10
  33. package/script/src/types/info/assets.d.ts +2 -0
  34. package/script/src/types/info/assets.d.ts.map +1 -1
  35. package/esm/deps/jsr.io/@noble/hashes/1.7.1/src/_assert.d.ts +0 -23
  36. package/esm/deps/jsr.io/@noble/hashes/1.7.1/src/_assert.d.ts.map +0 -1
  37. package/esm/deps/jsr.io/@noble/hashes/1.7.1/src/_assert.js +0 -43
  38. package/esm/deps/jsr.io/@noble/hashes/1.7.1/src/_u64.d.ts.map +0 -1
  39. package/esm/deps/jsr.io/@noble/hashes/1.7.1/src/sha3.d.ts.map +0 -1
  40. package/esm/deps/jsr.io/@noble/hashes/1.7.1/src/utils.d.ts.map +0 -1
  41. package/script/deps/jsr.io/@noble/hashes/1.7.1/src/_assert.d.ts +0 -23
  42. package/script/deps/jsr.io/@noble/hashes/1.7.1/src/_assert.d.ts.map +0 -1
  43. package/script/deps/jsr.io/@noble/hashes/1.7.1/src/_assert.js +0 -59
  44. package/script/deps/jsr.io/@noble/hashes/1.7.1/src/_u64.d.ts.map +0 -1
  45. package/script/deps/jsr.io/@noble/hashes/1.7.1/src/sha3.d.ts.map +0 -1
  46. package/script/deps/jsr.io/@noble/hashes/1.7.1/src/utils.d.ts.map +0 -1
  47. /package/esm/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/crypto.d.ts +0 -0
  48. /package/esm/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/crypto.js +0 -0
  49. /package/script/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/crypto.d.ts +0 -0
  50. /package/script/deps/jsr.io/@noble/hashes/{1.7.1 → 1.8.0}/src/crypto.js +0 -0
@@ -10,20 +10,59 @@
10
10
  // Makes the utils un-importable in browsers without a bundler.
11
11
  // Once node.js 18 is deprecated (2025-04-30), we can just drop the import.
12
12
  import { crypto } from './crypto.js';
13
- import { abytes } from './_assert.js';
14
- // export { isBytes } from './_assert.js';
15
- // We can't reuse isBytes from _assert, because somehow this causes huge perf issues
13
+ /** Checks if something is Uint8Array. Be careful: nodejs Buffer will return true. */
16
14
  export function isBytes(a) {
17
15
  return a instanceof Uint8Array || (ArrayBuffer.isView(a) && a.constructor.name === 'Uint8Array');
18
16
  }
19
- // Cast array to different type
17
+ /** Asserts something is positive integer. */
18
+ export function anumber(n) {
19
+ if (!Number.isSafeInteger(n) || n < 0)
20
+ throw new Error('positive integer expected, got ' + n);
21
+ }
22
+ /** Asserts something is Uint8Array. */
23
+ export function abytes(b, ...lengths) {
24
+ if (!isBytes(b))
25
+ throw new Error('Uint8Array expected');
26
+ if (lengths.length > 0 && !lengths.includes(b.length))
27
+ throw new Error('Uint8Array expected of length ' + lengths + ', got length=' + b.length);
28
+ }
29
+ /** Asserts something is hash */
30
+ export function ahash(h) {
31
+ if (typeof h !== 'function' || typeof h.create !== 'function')
32
+ throw new Error('Hash should be wrapped by utils.createHasher');
33
+ anumber(h.outputLen);
34
+ anumber(h.blockLen);
35
+ }
36
+ /** Asserts a hash instance has not been destroyed / finished */
37
+ export function aexists(instance, checkFinished = true) {
38
+ if (instance.destroyed)
39
+ throw new Error('Hash instance has been destroyed');
40
+ if (checkFinished && instance.finished)
41
+ throw new Error('Hash#digest() has already been called');
42
+ }
43
+ /** Asserts output is properly-sized byte array */
44
+ export function aoutput(out, instance) {
45
+ abytes(out);
46
+ const min = instance.outputLen;
47
+ if (out.length < min) {
48
+ throw new Error('digestInto() expects output buffer of length at least ' + min);
49
+ }
50
+ }
51
+ /** Cast u8 / u16 / u32 to u8. */
20
52
  export function u8(arr) {
21
53
  return new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);
22
54
  }
55
+ /** Cast u8 / u16 / u32 to u32. */
23
56
  export function u32(arr) {
24
57
  return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));
25
58
  }
26
- // Cast array to view
59
+ /** Zeroize a byte array. Warning: JS provides no guarantees. */
60
+ export function clean(...arrays) {
61
+ for (let i = 0; i < arrays.length; i++) {
62
+ arrays[i].fill(0);
63
+ }
64
+ }
65
+ /** Create DataView of an array for easy byte-level manipulation. */
27
66
  export function createView(arr) {
28
67
  return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);
29
68
  }
@@ -37,7 +76,7 @@ export function rotl(word, shift) {
37
76
  }
38
77
  /** Is current platform little-endian? Most are. Big-Endian platform: IBM */
39
78
  export const isLE = /* @__PURE__ */ (() => new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44)();
40
- // The byte swap operation for uint32
79
+ /** The byte swap operation for uint32 */
41
80
  export function byteSwap(word) {
42
81
  return (((word << 24) & 0xff000000) |
43
82
  ((word << 8) & 0xff0000) |
@@ -45,23 +84,36 @@ export function byteSwap(word) {
45
84
  ((word >>> 24) & 0xff));
46
85
  }
47
86
  /** Conditionally byte swap if on a big-endian platform */
48
- export const byteSwapIfBE = isLE
87
+ export const swap8IfBE = isLE
49
88
  ? (n) => n
50
89
  : (n) => byteSwap(n);
90
+ /** @deprecated */
91
+ export const byteSwapIfBE = swap8IfBE;
51
92
  /** In place byte swap for Uint32Array */
52
93
  export function byteSwap32(arr) {
53
94
  for (let i = 0; i < arr.length; i++) {
54
95
  arr[i] = byteSwap(arr[i]);
55
96
  }
97
+ return arr;
56
98
  }
99
+ export const swap32IfBE = isLE
100
+ ? (u) => u
101
+ : byteSwap32;
102
+ // Built-in hex conversion https://caniuse.com/mdn-javascript_builtins_uint8array_fromhex
103
+ const hasHexBuiltin = /* @__PURE__ */ (() =>
104
+ // @ts-ignore
105
+ typeof Uint8Array.from([]).toHex === 'function' && typeof Uint8Array.fromHex === 'function')();
57
106
  // Array where index 0xf0 (240) is mapped to string 'f0'
58
107
  const hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));
59
108
  /**
60
- * Convert byte array to hex string.
109
+ * Convert byte array to hex string. Uses built-in function, when available.
61
110
  * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'
62
111
  */
63
112
  export function bytesToHex(bytes) {
64
113
  abytes(bytes);
114
+ // @ts-ignore
115
+ if (hasHexBuiltin)
116
+ return bytes.toHex();
65
117
  // pre-caching improves the speed 6x
66
118
  let hex = '';
67
119
  for (let i = 0; i < bytes.length; i++) {
@@ -81,12 +133,15 @@ function asciiToBase16(ch) {
81
133
  return;
82
134
  }
83
135
  /**
84
- * Convert hex string to byte array.
136
+ * Convert hex string to byte array. Uses built-in function, when available.
85
137
  * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])
86
138
  */
87
139
  export function hexToBytes(hex) {
88
140
  if (typeof hex !== 'string')
89
141
  throw new Error('hex string expected, got ' + typeof hex);
142
+ // @ts-ignore
143
+ if (hasHexBuiltin)
144
+ return Uint8Array.fromHex(hex);
90
145
  const hl = hex.length;
91
146
  const al = hl / 2;
92
147
  if (hl % 2)
@@ -123,14 +178,21 @@ export async function asyncLoop(iters, tick, cb) {
123
178
  }
124
179
  }
125
180
  /**
126
- * Convert JS string to byte array.
127
- * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])
181
+ * Converts string to bytes using UTF8 encoding.
182
+ * @example utf8ToBytes('abc') // Uint8Array.from([97, 98, 99])
128
183
  */
129
184
  export function utf8ToBytes(str) {
130
185
  if (typeof str !== 'string')
131
- throw new Error('utf8ToBytes expected string, got ' + typeof str);
186
+ throw new Error('string expected');
132
187
  return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809
133
188
  }
189
+ /**
190
+ * Converts bytes to string using UTF8 encoding.
191
+ * @example bytesToUtf8(Uint8Array.from([97, 98, 99])) // 'abc'
192
+ */
193
+ export function bytesToUtf8(bytes) {
194
+ return new TextDecoder().decode(bytes);
195
+ }
134
196
  /**
135
197
  * Normalizes (non-hex) string or Uint8Array to Uint8Array.
136
198
  * Warning: when Uint8Array is passed, it would NOT get copied.
@@ -143,8 +205,16 @@ export function toBytes(data) {
143
205
  return data;
144
206
  }
145
207
  /**
146
- * Copies several Uint8Arrays into one.
208
+ * Helper for KDFs: consumes uint8array or string.
209
+ * When string is passed, does utf8 decoding, using TextDecoder.
147
210
  */
211
+ export function kdfInputToBytes(data) {
212
+ if (typeof data === 'string')
213
+ data = utf8ToBytes(data);
214
+ abytes(data);
215
+ return data;
216
+ }
217
+ /** Copies several Uint8Arrays into one. */
148
218
  export function concatBytes(...arrays) {
149
219
  let sum = 0;
150
220
  for (let i = 0; i < arrays.length; i++) {
@@ -160,21 +230,17 @@ export function concatBytes(...arrays) {
160
230
  }
161
231
  return res;
162
232
  }
163
- /** For runtime check if class implements interface */
164
- export class Hash {
165
- // Safe version that clones internal state
166
- clone() {
167
- return this._cloneInto();
168
- }
169
- }
170
233
  export function checkOpts(defaults, opts) {
171
234
  if (opts !== undefined && {}.toString.call(opts) !== '[object Object]')
172
- throw new Error('Options should be object or undefined');
235
+ throw new Error('options should be object or undefined');
173
236
  const merged = Object.assign(defaults, opts);
174
237
  return merged;
175
238
  }
239
+ /** For runtime check if class implements interface */
240
+ export class Hash {
241
+ }
176
242
  /** Wraps hash function, creating an interface on top of it */
177
- export function wrapConstructor(hashCons) {
243
+ export function createHasher(hashCons) {
178
244
  const hashC = (msg) => hashCons().update(toBytes(msg)).digest();
179
245
  const tmp = hashCons();
180
246
  hashC.outputLen = tmp.outputLen;
@@ -182,7 +248,7 @@ export function wrapConstructor(hashCons) {
182
248
  hashC.create = () => hashCons();
183
249
  return hashC;
184
250
  }
185
- export function wrapConstructorWithOpts(hashCons) {
251
+ export function createOptHasher(hashCons) {
186
252
  const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();
187
253
  const tmp = hashCons({});
188
254
  hashC.outputLen = tmp.outputLen;
@@ -190,7 +256,7 @@ export function wrapConstructorWithOpts(hashCons) {
190
256
  hashC.create = (opts) => hashCons(opts);
191
257
  return hashC;
192
258
  }
193
- export function wrapXOFConstructorWithOpts(hashCons) {
259
+ export function createXOFer(hashCons) {
194
260
  const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();
195
261
  const tmp = hashCons({});
196
262
  hashC.outputLen = tmp.outputLen;
@@ -198,6 +264,9 @@ export function wrapXOFConstructorWithOpts(hashCons) {
198
264
  hashC.create = (opts) => hashCons(opts);
199
265
  return hashC;
200
266
  }
267
+ export const wrapConstructor = createHasher;
268
+ export const wrapConstructorWithOpts = createOptHasher;
269
+ export const wrapXOFConstructorWithOpts = createXOFer;
201
270
  /** Cryptographically secure PRNG. Uses internal OS-level `crypto.getRandomValues`. */
202
271
  export function randomBytes(bytesLength = 32) {
203
272
  if (crypto && typeof crypto.getRandomValues === 'function') {
@@ -205,7 +274,7 @@ export function randomBytes(bytesLength = 32) {
205
274
  }
206
275
  // Legacy Node.js compatibility
207
276
  if (crypto && typeof crypto.randomBytes === 'function') {
208
- return crypto.randomBytes(bytesLength);
277
+ return Uint8Array.from(crypto.randomBytes(bytesLength));
209
278
  }
210
279
  throw new Error('crypto.getRandomValues must be defined');
211
280
  }
@@ -47,7 +47,7 @@
47
47
  * ```
48
48
  * @module
49
49
  */
50
- import { keccak_256 } from "../deps/jsr.io/@noble/hashes/1.7.1/src/sha3.js";
50
+ import { keccak_256 } from "../deps/jsr.io/@noble/hashes/1.8.0/src/sha3.js";
51
51
  import { encode } from "../deps/jsr.io/@std/msgpack/1.0.3/encode.js";
52
52
  import { decodeHex, encodeHex } from "../deps/jsr.io/@std/encoding/1.0.9/hex.js";
53
53
  /**
@@ -27,6 +27,21 @@ export interface HttpTransportOptions {
27
27
  * @defaultValue `10_000`
28
28
  */
29
29
  timeout?: number | null;
30
+ /**
31
+ * Server to use for API requests.
32
+ * Can be a predefined server name or a custom URLs object.
33
+ * @defaultValue `api`
34
+ */
35
+ server?: "api" | "api2" | "api-ui" | {
36
+ mainnet?: {
37
+ api?: string | URL;
38
+ rpc?: string | URL;
39
+ };
40
+ testnet?: {
41
+ api?: string | URL;
42
+ rpc?: string | URL;
43
+ };
44
+ };
30
45
  /** A custom {@linkcode https://developer.mozilla.org/en-US/docs/Web/API/RequestInit | RequestInit} that is merged with a fetch request. */
31
46
  fetchOptions?: Omit<RequestInit, "body" | "method">;
32
47
  /**
@@ -44,19 +59,51 @@ export interface HttpTransportOptions {
44
59
  }
45
60
  /** HTTP implementation of the REST transport interface. */
46
61
  export declare class HttpTransport implements IRequestTransport, HttpTransportOptions {
47
- /** API endpoint paths for mainnet and testnet. */
48
- protected static readonly endpointPaths: {
49
- mainnet: {
50
- api: string;
51
- rpc: string;
62
+ /** Predefined server configurations for the Hyperliquid API. */
63
+ protected static readonly servers: {
64
+ api: {
65
+ mainnet: {
66
+ api: string;
67
+ rpc: string;
68
+ };
69
+ testnet: {
70
+ api: string;
71
+ rpc: string;
72
+ };
52
73
  };
53
- testnet: {
54
- api: string;
55
- rpc: string;
74
+ api2: {
75
+ mainnet: {
76
+ api: string;
77
+ rpc: string;
78
+ };
79
+ testnet: {
80
+ api: string;
81
+ rpc: string;
82
+ };
83
+ };
84
+ "api-ui": {
85
+ mainnet: {
86
+ api: string;
87
+ rpc: string;
88
+ };
89
+ testnet: {
90
+ api: string;
91
+ rpc: string;
92
+ };
56
93
  };
57
94
  };
58
95
  isTestnet: boolean;
59
96
  timeout: number | null;
97
+ server: "api" | "api2" | "api-ui" | {
98
+ mainnet?: {
99
+ api?: string | URL;
100
+ rpc?: string | URL;
101
+ };
102
+ testnet?: {
103
+ api?: string | URL;
104
+ rpc?: string | URL;
105
+ };
106
+ };
60
107
  fetchOptions: Omit<RequestInit, "body" | "method">;
61
108
  onRequest?: (request: Request) => MaybePromise<Request | void | null | undefined>;
62
109
  onResponse?: (response: Response) => MaybePromise<Response | void | null | undefined>;
@@ -65,6 +112,20 @@ export declare class HttpTransport implements IRequestTransport, HttpTransportOp
65
112
  * @param options - Configuration options for the HTTP transport layer.
66
113
  */
67
114
  constructor(options?: HttpTransportOptions);
115
+ /**
116
+ * Returns the API and RPC endpoint URLs for the specified server.
117
+ * @returns An object containing the API and RPC endpoint URLs for the mainnet and testnet.
118
+ */
119
+ protected get endpointPaths(): {
120
+ mainnet: {
121
+ api: string | URL;
122
+ rpc: string | URL;
123
+ };
124
+ testnet: {
125
+ api: string | URL;
126
+ rpc: string | URL;
127
+ };
128
+ };
68
129
  /**
69
130
  * Sends a request to the Hyperliquid API via fetch.
70
131
  * @param endpoint - The API endpoint to send the request to.
@@ -1 +1 @@
1
- {"version":3,"file":"http_transport.d.ts","sourceRoot":"","sources":["../../../../src/src/transports/http/http_transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE1F;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,cAAc;IAM7B,QAAQ,EAAE,QAAQ;IAAS,YAAY,CAAC,EAAE,MAAM;IALnE;;;;OAIG;gBACgB,QAAQ,EAAE,QAAQ,EAAS,YAAY,CAAC,EAAE,MAAM,YAAA;CAOtE;AAED,0DAA0D;AAC1D,MAAM,WAAW,oBAAoB;IACjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,2IAA2I;IAC3I,YAAY,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;IAEpD;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,YAAY,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAElF;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,YAAY,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CACzF;AAED,2DAA2D;AAC3D,qBAAa,aAAc,YAAW,iBAAiB,EAAE,oBAAoB;IACzE,kDAAkD;IAClD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa;;;;;;;;;MASrC;IAEF,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;IACnD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,YAAY,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAClF,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,YAAY,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAEtF;;;OAGG;gBACS,OAAO,CAAC,EAAE,oBAAoB;IAQ1C;;;;;;;;OAQG;IACG,OAAO,CACT,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,EAC1C,OAAO,EAAE,OAAO,EAChB,MAAM,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC,OAAO,CAAC;CAyDtB"}
1
+ {"version":3,"file":"http_transport.d.ts","sourceRoot":"","sources":["../../../../src/src/transports/http/http_transport.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,12 @@ export class HttpTransport {
49
49
  writable: true,
50
50
  value: void 0
51
51
  });
52
+ Object.defineProperty(this, "server", {
53
+ enumerable: true,
54
+ configurable: true,
55
+ writable: true,
56
+ value: void 0
57
+ });
52
58
  Object.defineProperty(this, "fetchOptions", {
53
59
  enumerable: true,
54
60
  configurable: true,
@@ -69,10 +75,30 @@ export class HttpTransport {
69
75
  });
70
76
  this.isTestnet = options?.isTestnet ?? false;
71
77
  this.timeout = options?.timeout === undefined ? 10_000 : options.timeout;
78
+ this.server = options?.server ?? "api";
72
79
  this.fetchOptions = options?.fetchOptions ?? {};
73
80
  this.onRequest = options?.onRequest;
74
81
  this.onResponse = options?.onResponse;
75
82
  }
83
+ /**
84
+ * Returns the API and RPC endpoint URLs for the specified server.
85
+ * @returns An object containing the API and RPC endpoint URLs for the mainnet and testnet.
86
+ */
87
+ get endpointPaths() {
88
+ if (typeof this.server === "string") {
89
+ return HttpTransport.servers[this.server];
90
+ }
91
+ return {
92
+ mainnet: {
93
+ api: this.server.mainnet?.api ?? HttpTransport.servers.api.mainnet.api,
94
+ rpc: this.server.mainnet?.rpc ?? HttpTransport.servers.api.mainnet.rpc,
95
+ },
96
+ testnet: {
97
+ api: this.server.testnet?.api ?? HttpTransport.servers.api.testnet.api,
98
+ rpc: this.server.testnet?.rpc ?? HttpTransport.servers.api.testnet.rpc,
99
+ },
100
+ };
101
+ }
76
102
  /**
77
103
  * Sends a request to the Hyperliquid API via fetch.
78
104
  * @param endpoint - The API endpoint to send the request to.
@@ -84,8 +110,7 @@ export class HttpTransport {
84
110
  */
85
111
  async request(endpoint, payload, signal) {
86
112
  // Construct a Request
87
- const url = new URL(endpoint, HttpTransport
88
- .endpointPaths[this.isTestnet ? "testnet" : "mainnet"][endpoint === "explorer" ? "rpc" : "api"]);
113
+ const url = new URL(endpoint, this.endpointPaths[this.isTestnet ? "testnet" : "mainnet"][endpoint === "explorer" ? "rpc" : "api"]);
89
114
  const init = mergeRequestInit({
90
115
  body: JSON.stringify(payload),
91
116
  headers: {
@@ -128,19 +153,41 @@ export class HttpTransport {
128
153
  return body;
129
154
  }
130
155
  }
131
- /** API endpoint paths for mainnet and testnet. */
132
- Object.defineProperty(HttpTransport, "endpointPaths", {
156
+ /** Predefined server configurations for the Hyperliquid API. */
157
+ Object.defineProperty(HttpTransport, "servers", {
133
158
  enumerable: true,
134
159
  configurable: true,
135
160
  writable: true,
136
161
  value: {
137
- mainnet: {
138
- api: "https://api.hyperliquid.xyz",
139
- rpc: "https://rpc.hyperliquid.xyz",
162
+ api: {
163
+ mainnet: {
164
+ api: "https://api.hyperliquid.xyz",
165
+ rpc: "https://rpc.hyperliquid.xyz",
166
+ },
167
+ testnet: {
168
+ api: "https://api.hyperliquid-testnet.xyz",
169
+ rpc: "https://rpc.hyperliquid-testnet.xyz",
170
+ },
140
171
  },
141
- testnet: {
142
- api: "https://api.hyperliquid-testnet.xyz",
143
- rpc: "https://rpc.hyperliquid-testnet.xyz",
172
+ api2: {
173
+ mainnet: {
174
+ api: "https://api2.hyperliquid.xyz",
175
+ rpc: "https://rpc.hyperliquid.xyz",
176
+ },
177
+ testnet: {
178
+ api: "https://api2.hyperliquid-testnet.xyz",
179
+ rpc: "https://rpc.hyperliquid-testnet.xyz",
180
+ },
181
+ },
182
+ "api-ui": {
183
+ mainnet: {
184
+ api: "https://api-ui.hyperliquid.xyz",
185
+ rpc: "https://rpc.hyperliquid.xyz",
186
+ },
187
+ testnet: {
188
+ api: "https://api-ui.hyperliquid-testnet.xyz",
189
+ rpc: "https://rpc.hyperliquid-testnet.xyz",
190
+ },
144
191
  },
145
192
  }
146
193
  });
@@ -73,6 +73,8 @@ export interface PerpsUniverse {
73
73
  name: string;
74
74
  /** Maximum allowed leverage. */
75
75
  maxLeverage: number;
76
+ /** Unique identifier for the margin requirements table. */
77
+ marginTableId: number;
76
78
  /** Indicates if only isolated margin trading is allowed. */
77
79
  onlyIsolated?: true;
78
80
  /** Indicates if the universe is delisted. */
@@ -1 +1 @@
1
- {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../../../src/src/types/info/assets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../../../src/src/types/info/assets.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nktkas/hyperliquid",
3
- "version": "0.17.3",
3
+ "version": "0.17.4",
4
4
  "description": "Unofficial Hyperliquid API SDK for all major JS runtimes, written in TypeScript and provided with tests",
5
5
  "keywords": [
6
6
  "api",
@@ -26,7 +26,7 @@ declare const add4L: (Al: number, Bl: number, Cl: number, Dl: number) => number;
26
26
  declare const add4H: (low: number, Ah: number, Bh: number, Ch: number, Dh: number) => number;
27
27
  declare const add5L: (Al: number, Bl: number, Cl: number, Dl: number, El: number) => number;
28
28
  declare const add5H: (low: number, Ah: number, Bh: number, Ch: number, Dh: number, Eh: number) => number;
29
- export { fromBig, split, toBig, shrSH, shrSL, rotrSH, rotrSL, rotrBH, rotrBL, rotr32H, rotr32L, rotlSH, rotlSL, rotlBH, rotlBL, add, add3L, add3H, add4L, add4H, add5H, add5L, };
29
+ export { add, add3H, add3L, add4H, add4L, add5H, add5L, fromBig, rotlBH, rotlBL, rotlSH, rotlSL, rotr32H, rotr32L, rotrBH, rotrBL, rotrSH, rotrSL, shrSH, shrSL, split, toBig };
30
30
  declare const u64: {
31
31
  fromBig: typeof fromBig;
32
32
  split: typeof split;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_u64.d.ts","sourceRoot":"","sources":["../../../../../../../src/deps/jsr.io/@noble/hashes/1.8.0/src/_u64.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,10 @@
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.add5L = exports.add5H = exports.add4H = exports.add4L = exports.add3H = exports.add3L = exports.rotlBL = exports.rotlBH = exports.rotlSL = exports.rotlSH = exports.rotr32L = exports.rotr32H = exports.rotrBL = exports.rotrBH = exports.rotrSL = exports.rotrSH = exports.shrSL = exports.shrSH = exports.toBig = void 0;
12
+ exports.toBig = exports.shrSL = exports.shrSH = exports.rotrSL = exports.rotrSH = exports.rotrBL = exports.rotrBH = exports.rotr32L = exports.rotr32H = exports.rotlSL = exports.rotlSH = exports.rotlBL = exports.rotlBH = exports.add5L = exports.add5H = exports.add4L = exports.add4H = exports.add3L = exports.add3H = void 0;
13
+ exports.add = add;
13
14
  exports.fromBig = fromBig;
14
15
  exports.split = split;
15
- exports.add = add;
16
16
  /**
17
17
  * Internal helpers for u64. BigUint64Array is too slow as per 2025, so we implement it using Uint32Array.
18
18
  * @todo re-check https://issues.chromium.org/issues/42212588
@@ -26,9 +26,10 @@
26
26
  return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };
27
27
  }
28
28
  function split(lst, le = false) {
29
- let Ah = new Uint32Array(lst.length);
30
- let Al = new Uint32Array(lst.length);
31
- for (let i = 0; i < lst.length; i++) {
29
+ const len = lst.length;
30
+ let Ah = new Uint32Array(len);
31
+ let Al = new Uint32Array(len);
32
+ for (let i = 0; i < len; i++) {
32
33
  const { h, l } = fromBig(lst[i], le);
33
34
  [Ah[i], Al[i]] = [h, l];
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../../../../src/deps/jsr.io/@noble/hashes/1.7.1/src/crypto.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,MAAM,EAAE,GACqE,CAAC"}
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../../../../src/deps/jsr.io/@noble/hashes/1.8.0/src/crypto.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,MAAM,EAAE,GACqE,CAAC"}
@@ -3,18 +3,19 @@ import { Hash, type CHash, type CHashXO, type HashXOF, type Input } from './util
3
3
  export declare function keccakP(s: Uint32Array, rounds?: number): void;
4
4
  /** Keccak sponge function. */
5
5
  export declare class Keccak extends Hash<Keccak> implements HashXOF<Keccak> {
6
- blockLen: number;
7
- suffix: number;
8
- outputLen: number;
9
- protected enableXOF: boolean;
10
- protected rounds: number;
11
6
  protected state: Uint8Array;
12
7
  protected pos: number;
13
8
  protected posOut: number;
14
9
  protected finished: boolean;
15
10
  protected state32: Uint32Array;
16
11
  protected destroyed: boolean;
12
+ blockLen: number;
13
+ suffix: number;
14
+ outputLen: number;
15
+ protected enableXOF: boolean;
16
+ protected rounds: number;
17
17
  constructor(blockLen: number, suffix: number, outputLen: number, enableXOF?: boolean, rounds?: number);
18
+ clone(): Keccak;
18
19
  protected keccak(): void;
19
20
  update(data: Input): this;
20
21
  protected finish(): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sha3.d.ts","sourceRoot":"","sources":["../../../../../../../src/deps/jsr.io/@noble/hashes/1.8.0/src/sha3.ts"],"names":[],"mappings":"AAaA,OAAO,EAE6B,IAAI,EAGtC,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EACnD,MAAM,YAAY,CAAC;AAoCpB,kFAAkF;AAClF,wBAAgB,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,GAAE,MAAW,GAAG,IAAI,CAyCjE;AAED,8BAA8B;AAC9B,qBAAa,MAAO,SAAQ,IAAI,CAAC,MAAM,CAAE,YAAW,OAAO,CAAC,MAAM,CAAC;IACjE,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC;IAC5B,SAAS,CAAC,GAAG,SAAK;IAClB,SAAS,CAAC,MAAM,SAAK;IACrB,SAAS,CAAC,QAAQ,UAAS;IAC3B,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC;IAC/B,SAAS,CAAC,SAAS,UAAS;IAErB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,SAAS,UAAS;IAC5B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;gBAIvB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,UAAQ,EACjB,MAAM,GAAE,MAAW;IAiBrB,KAAK,IAAI,MAAM;IAGf,SAAS,CAAC,MAAM,IAAI,IAAI;IAOxB,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAazB,SAAS,CAAC,MAAM,IAAI,IAAI;IAUxB,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU;IAehD,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU;IAKpC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAI9B,UAAU,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU;IAOvC,MAAM,IAAI,UAAU;IAGpB,OAAO,IAAI,IAAI;IAIf,UAAU,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;CAehC;AAKD,8BAA8B;AAC9B,eAAO,MAAM,QAAQ,EAAE,KAAyD,CAAC;AACjF,yDAAyD;AACzD,eAAO,MAAM,QAAQ,EAAE,KAAyD,CAAC;AACjF,8BAA8B;AAC9B,eAAO,MAAM,QAAQ,EAAE,KAAyD,CAAC;AACjF,8BAA8B;AAC9B,eAAO,MAAM,QAAQ,EAAE,KAAwD,CAAC;AAEhF,gCAAgC;AAChC,eAAO,MAAM,UAAU,EAAE,KAAyD,CAAC;AACnF,yDAAyD;AACzD,eAAO,MAAM,UAAU,EAAE,KAAyD,CAAC;AACnF,gCAAgC;AAChC,eAAO,MAAM,UAAU,EAAE,KAAyD,CAAC;AACnF,gCAAgC;AAChC,eAAO,MAAM,UAAU,EAAE,KAAwD,CAAC;AAElF,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAQ3C,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,EAAE,OAAgE,CAAC;AACxF,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,EAAE,OAAgE,CAAC"}