@nktkas/hyperliquid 0.17.4 → 0.18.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +48 -36
- package/esm/deps/jsr.io/@std/async/1.0.12/delay.d.ts +43 -0
- package/esm/deps/jsr.io/@std/async/1.0.12/delay.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/async/1.0.12/delay.js +63 -0
- package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common16.d.ts +1 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common16.js +1 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts.map +1 -0
- package/esm/src/base.d.ts +2 -2
- package/esm/src/base.d.ts.map +1 -1
- package/esm/src/clients/event.d.ts +2 -1
- package/esm/src/clients/event.d.ts.map +1 -1
- package/esm/src/clients/event.js +3 -0
- package/esm/src/clients/public.d.ts +2 -1
- package/esm/src/clients/public.d.ts.map +1 -1
- package/esm/src/clients/public.js +3 -0
- package/esm/src/clients/wallet.d.ts +24 -13
- package/esm/src/clients/wallet.d.ts.map +1 -1
- package/esm/src/clients/wallet.js +88 -62
- package/esm/src/signing.d.ts +4 -1
- package/esm/src/signing.d.ts.map +1 -1
- package/esm/src/signing.js +46 -23
- package/esm/src/transports/http/http_transport.d.ts +9 -60
- package/esm/src/transports/http/http_transport.d.ts.map +1 -1
- package/esm/src/transports/http/http_transport.js +9 -57
- package/esm/src/transports/websocket/_hyperliquid_event_target.d.ts +3 -12
- package/esm/src/transports/websocket/_hyperliquid_event_target.d.ts.map +1 -1
- package/esm/src/transports/websocket/_reconnecting_websocket.d.ts +22 -44
- package/esm/src/transports/websocket/_reconnecting_websocket.d.ts.map +1 -1
- package/esm/src/transports/websocket/_reconnecting_websocket.js +127 -193
- package/esm/src/transports/websocket/websocket_transport.d.ts +8 -1
- package/esm/src/transports/websocket/websocket_transport.d.ts.map +1 -1
- package/esm/src/transports/websocket/websocket_transport.js +26 -21
- package/esm/src/types/exchange/requests.d.ts +26 -2
- package/esm/src/types/exchange/requests.d.ts.map +1 -1
- package/esm/src/types/exchange/responses.d.ts +6 -6
- package/esm/src/types/exchange/responses.d.ts.map +1 -1
- package/esm/src/types/info/accounts.d.ts +14 -0
- package/esm/src/types/info/accounts.d.ts.map +1 -1
- package/esm/src/types/info/assets.d.ts +18 -0
- package/esm/src/types/info/assets.d.ts.map +1 -1
- package/package.json +2 -1
- package/script/deps/jsr.io/@std/async/1.0.12/delay.d.ts +43 -0
- package/script/deps/jsr.io/@std/async/1.0.12/delay.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/async/1.0.12/delay.js +76 -0
- package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common16.d.ts +1 -1
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common16.js +1 -1
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts.map +1 -0
- package/script/src/base.d.ts +2 -2
- package/script/src/base.d.ts.map +1 -1
- package/script/src/clients/event.d.ts +2 -1
- package/script/src/clients/event.d.ts.map +1 -1
- package/script/src/clients/event.js +3 -0
- package/script/src/clients/public.d.ts +2 -1
- package/script/src/clients/public.d.ts.map +1 -1
- package/script/src/clients/public.js +3 -0
- package/script/src/clients/wallet.d.ts +24 -13
- package/script/src/clients/wallet.d.ts.map +1 -1
- package/script/src/clients/wallet.js +88 -62
- package/script/src/signing.d.ts +4 -1
- package/script/src/signing.d.ts.map +1 -1
- package/script/src/signing.js +46 -23
- package/script/src/transports/http/http_transport.d.ts +9 -60
- package/script/src/transports/http/http_transport.d.ts.map +1 -1
- package/script/src/transports/http/http_transport.js +9 -57
- package/script/src/transports/websocket/_hyperliquid_event_target.d.ts +3 -12
- package/script/src/transports/websocket/_hyperliquid_event_target.d.ts.map +1 -1
- package/script/src/transports/websocket/_reconnecting_websocket.d.ts +22 -44
- package/script/src/transports/websocket/_reconnecting_websocket.d.ts.map +1 -1
- package/script/src/transports/websocket/_reconnecting_websocket.js +129 -195
- package/script/src/transports/websocket/websocket_transport.d.ts +8 -1
- package/script/src/transports/websocket/websocket_transport.d.ts.map +1 -1
- package/script/src/transports/websocket/websocket_transport.js +26 -21
- package/script/src/types/exchange/requests.d.ts +26 -2
- package/script/src/types/exchange/requests.d.ts.map +1 -1
- package/script/src/types/exchange/responses.d.ts +6 -6
- package/script/src/types/exchange/responses.d.ts.map +1 -1
- package/script/src/types/info/accounts.d.ts +14 -0
- package/script/src/types/info/accounts.d.ts.map +1 -1
- package/script/src/types/info/assets.d.ts +18 -0
- package/script/src/types/info/assets.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.9/_common16.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.9/_common_detach.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.9/_types.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.9/hex.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.9/_common16.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.9/_common_detach.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.9/_types.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.9/hex.d.ts.map +0 -1
- /package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common_detach.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common_detach.js +0 -0
- /package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_types.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_types.js +0 -0
- /package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/hex.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/hex.js +0 -0
- /package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common_detach.d.ts +0 -0
- /package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_common_detach.js +0 -0
- /package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_types.d.ts +0 -0
- /package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/_types.js +0 -0
- /package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/hex.d.ts +0 -0
- /package/script/deps/jsr.io/@std/encoding/{1.0.9 → 1.0.10}/hex.js +0 -0
|
@@ -27,12 +27,8 @@ export interface HttpTransportOptions {
|
|
|
27
27
|
* @defaultValue `10_000`
|
|
28
28
|
*/
|
|
29
29
|
timeout?: number | null;
|
|
30
|
-
/**
|
|
31
|
-
|
|
32
|
-
* Can be a predefined server name or a custom URLs object.
|
|
33
|
-
* @defaultValue `api`
|
|
34
|
-
*/
|
|
35
|
-
server?: "api" | "api2" | "api-ui" | {
|
|
30
|
+
/** Custom server to use for API requests. */
|
|
31
|
+
server?: {
|
|
36
32
|
mainnet?: {
|
|
37
33
|
api?: string | URL;
|
|
38
34
|
rpc?: string | URL;
|
|
@@ -59,49 +55,16 @@ export interface HttpTransportOptions {
|
|
|
59
55
|
}
|
|
60
56
|
/** HTTP implementation of the REST transport interface. */
|
|
61
57
|
export declare class HttpTransport implements IRequestTransport, HttpTransportOptions {
|
|
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
|
-
};
|
|
73
|
-
};
|
|
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
|
-
};
|
|
93
|
-
};
|
|
94
|
-
};
|
|
95
58
|
isTestnet: boolean;
|
|
96
59
|
timeout: number | null;
|
|
97
|
-
server:
|
|
98
|
-
mainnet
|
|
99
|
-
api
|
|
100
|
-
rpc
|
|
60
|
+
server: {
|
|
61
|
+
mainnet: {
|
|
62
|
+
api: string | URL;
|
|
63
|
+
rpc: string | URL;
|
|
101
64
|
};
|
|
102
|
-
testnet
|
|
103
|
-
api
|
|
104
|
-
rpc
|
|
65
|
+
testnet: {
|
|
66
|
+
api: string | URL;
|
|
67
|
+
rpc: string | URL;
|
|
105
68
|
};
|
|
106
69
|
};
|
|
107
70
|
fetchOptions: Omit<RequestInit, "body" | "method">;
|
|
@@ -112,20 +75,6 @@ export declare class HttpTransport implements IRequestTransport, HttpTransportOp
|
|
|
112
75
|
* @param options - Configuration options for the HTTP transport layer.
|
|
113
76
|
*/
|
|
114
77
|
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
|
-
};
|
|
129
78
|
/**
|
|
130
79
|
* Sends a request to the Hyperliquid API via fetch.
|
|
131
80
|
* @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
|
|
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,6CAA6C;IAC7C,MAAM,CAAC,EAAE;QACL,OAAO,CAAC,EAAE;YAAE,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAC;QACrD,OAAO,CAAC,EAAE;YAAE,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAC;KACxD,CAAC;IAEF,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,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE;QACJ,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;YAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAC;QAClD,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;YAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAC;KACrD,CAAC;IACF,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;IAkB1C;;;;;;;;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;CAwDtB"}
|
|
@@ -88,29 +88,19 @@
|
|
|
88
88
|
});
|
|
89
89
|
this.isTestnet = options?.isTestnet ?? false;
|
|
90
90
|
this.timeout = options?.timeout === undefined ? 10_000 : options.timeout;
|
|
91
|
-
this.server =
|
|
92
|
-
this.fetchOptions = options?.fetchOptions ?? {};
|
|
93
|
-
this.onRequest = options?.onRequest;
|
|
94
|
-
this.onResponse = options?.onResponse;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Returns the API and RPC endpoint URLs for the specified server.
|
|
98
|
-
* @returns An object containing the API and RPC endpoint URLs for the mainnet and testnet.
|
|
99
|
-
*/
|
|
100
|
-
get endpointPaths() {
|
|
101
|
-
if (typeof this.server === "string") {
|
|
102
|
-
return HttpTransport.servers[this.server];
|
|
103
|
-
}
|
|
104
|
-
return {
|
|
91
|
+
this.server = {
|
|
105
92
|
mainnet: {
|
|
106
|
-
api:
|
|
107
|
-
rpc:
|
|
93
|
+
api: options?.server?.mainnet?.api ?? "https://api.hyperliquid.xyz",
|
|
94
|
+
rpc: options?.server?.mainnet?.rpc ?? "https://rpc.hyperliquid.xyz",
|
|
108
95
|
},
|
|
109
96
|
testnet: {
|
|
110
|
-
api:
|
|
111
|
-
rpc:
|
|
97
|
+
api: options?.server?.testnet?.api ?? "https://api.hyperliquid-testnet.xyz",
|
|
98
|
+
rpc: options?.server?.testnet?.rpc ?? "https://rpc.hyperliquid-testnet.xyz",
|
|
112
99
|
},
|
|
113
100
|
};
|
|
101
|
+
this.fetchOptions = options?.fetchOptions ?? {};
|
|
102
|
+
this.onRequest = options?.onRequest;
|
|
103
|
+
this.onResponse = options?.onResponse;
|
|
114
104
|
}
|
|
115
105
|
/**
|
|
116
106
|
* Sends a request to the Hyperliquid API via fetch.
|
|
@@ -123,7 +113,7 @@
|
|
|
123
113
|
*/
|
|
124
114
|
async request(endpoint, payload, signal) {
|
|
125
115
|
// Construct a Request
|
|
126
|
-
const url = new URL(endpoint, this.
|
|
116
|
+
const url = new URL(endpoint, this.server[this.isTestnet ? "testnet" : "mainnet"][endpoint === "explorer" ? "rpc" : "api"]);
|
|
127
117
|
const init = mergeRequestInit({
|
|
128
118
|
body: JSON.stringify(payload),
|
|
129
119
|
headers: {
|
|
@@ -167,44 +157,6 @@
|
|
|
167
157
|
}
|
|
168
158
|
}
|
|
169
159
|
exports.HttpTransport = HttpTransport;
|
|
170
|
-
/** Predefined server configurations for the Hyperliquid API. */
|
|
171
|
-
Object.defineProperty(HttpTransport, "servers", {
|
|
172
|
-
enumerable: true,
|
|
173
|
-
configurable: true,
|
|
174
|
-
writable: true,
|
|
175
|
-
value: {
|
|
176
|
-
api: {
|
|
177
|
-
mainnet: {
|
|
178
|
-
api: "https://api.hyperliquid.xyz",
|
|
179
|
-
rpc: "https://rpc.hyperliquid.xyz",
|
|
180
|
-
},
|
|
181
|
-
testnet: {
|
|
182
|
-
api: "https://api.hyperliquid-testnet.xyz",
|
|
183
|
-
rpc: "https://rpc.hyperliquid-testnet.xyz",
|
|
184
|
-
},
|
|
185
|
-
},
|
|
186
|
-
api2: {
|
|
187
|
-
mainnet: {
|
|
188
|
-
api: "https://api2.hyperliquid.xyz",
|
|
189
|
-
rpc: "https://rpc.hyperliquid.xyz",
|
|
190
|
-
},
|
|
191
|
-
testnet: {
|
|
192
|
-
api: "https://api2.hyperliquid-testnet.xyz",
|
|
193
|
-
rpc: "https://rpc.hyperliquid-testnet.xyz",
|
|
194
|
-
},
|
|
195
|
-
},
|
|
196
|
-
"api-ui": {
|
|
197
|
-
mainnet: {
|
|
198
|
-
api: "https://api-ui.hyperliquid.xyz",
|
|
199
|
-
rpc: "https://rpc.hyperliquid.xyz",
|
|
200
|
-
},
|
|
201
|
-
testnet: {
|
|
202
|
-
api: "https://api-ui.hyperliquid-testnet.xyz",
|
|
203
|
-
rpc: "https://rpc.hyperliquid-testnet.xyz",
|
|
204
|
-
},
|
|
205
|
-
},
|
|
206
|
-
}
|
|
207
|
-
});
|
|
208
160
|
/**
|
|
209
161
|
* Merges multiple `HeadersInit` objects into one.
|
|
210
162
|
* @param inits - A list of `HeadersInit` objects to merge.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TypedEventTarget } from "../../../deps/jsr.io/@derzade/typescript-event-target/1.1.1/mod.js";
|
|
2
2
|
import type { BlockDetails, TxDetails } from "../../types/explorer/responses.js";
|
|
3
|
+
import type { BaseExchangeResponse } from "../../types/exchange/responses.js";
|
|
3
4
|
/** Base system events and dynamic channel events for Hyperliquid WebSocket API. */
|
|
4
5
|
interface HyperliquidEventMap {
|
|
5
6
|
/** Subscription created/removed event. */
|
|
@@ -31,18 +32,8 @@ interface HyperliquidEventMap {
|
|
|
31
32
|
| {
|
|
32
33
|
/** Indicates that this is an action response. */
|
|
33
34
|
type: "action";
|
|
34
|
-
/**
|
|
35
|
-
payload:
|
|
36
|
-
/** Response status indicating success or failure of the action. */
|
|
37
|
-
status: "ok" | "err";
|
|
38
|
-
/** Success data or error message. */
|
|
39
|
-
response: {
|
|
40
|
-
/** Type of operation. */
|
|
41
|
-
type: string;
|
|
42
|
-
/** Specific data for the operation. */
|
|
43
|
-
data?: unknown;
|
|
44
|
-
} | string;
|
|
45
|
-
};
|
|
35
|
+
/** Action result. */
|
|
36
|
+
payload: BaseExchangeResponse;
|
|
46
37
|
};
|
|
47
38
|
}>;
|
|
48
39
|
/** Error response for message event. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_hyperliquid_event_target.d.ts","sourceRoot":"","sources":["../../../../src/src/transports/websocket/_hyperliquid_event_target.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oEAAoE,CAAC;AACtG,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"_hyperliquid_event_target.d.ts","sourceRoot":"","sources":["../../../../src/src/transports/websocket/_hyperliquid_event_target.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oEAAoE,CAAC;AACtG,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAU9E,mFAAmF;AACnF,UAAU,mBAAmB;IACzB,0CAA0C;IAC1C,oBAAoB,EAAE,WAAW,CAAC;QAC9B,sCAAsC;QACtC,MAAM,EAAE,WAAW,GAAG,aAAa,CAAC;QACpC,qCAAqC;QACrC,YAAY,EAAE,OAAO,CAAC;KACzB,CAAC,CAAC;IAEH,sCAAsC;IACtC,IAAI,EAAE,WAAW,CAAC;QACd,iCAAiC;QACjC,EAAE,EAAE,MAAM,CAAC;QACX,uBAAuB;QACvB,QAAQ;QACJ,iDAAiD;QAC/C;YACE,wDAAwD;YACxD,IAAI,EAAE,MAAM,CAAC;YACb,qCAAqC;YACrC,OAAO,EAAE;gBACL,0CAA0C;gBAC1C,IAAI,EAAE,MAAM,CAAC;gBACb,iCAAiC;gBACjC,IAAI,EAAE,OAAO,CAAC;aACjB,CAAC;SACL;QACD,yCAAyC;WACvC;YACE,iDAAiD;YACjD,IAAI,EAAE,QAAQ,CAAC;YACf,qBAAqB;YACrB,OAAO,EAAE,oBAAoB,CAAC;SACjC,CAAC;KACT,CAAC,CAAC;IAEH,wCAAwC;IACxC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAE3B,2BAA2B;IAC3B,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAE7B,mCAAmC;IACnC,cAAc,EAAE,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IAEzD,yCAAyC;IACzC,YAAY,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;IAEvC,gCAAgC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;CACvC;AAED,iFAAiF;AACjF,qBAAa,sBAAuB,SAAQ,gBAAgB,CAAC,mBAAmB,CAAC;gBACjE,MAAM,EAAE,SAAS;CAiBhC"}
|
|
@@ -18,14 +18,14 @@ export interface ReconnectingWebSocketOptions {
|
|
|
18
18
|
* @param attempt - The current attempt number.
|
|
19
19
|
* @defaultValue `(attempt) => Math.min(~~(1 << attempt) * 150, 10_000)` - Exponential backoff (max 10s)
|
|
20
20
|
*/
|
|
21
|
-
connectionDelay?: number | ((attempt: number) => MaybePromise<number>);
|
|
21
|
+
connectionDelay?: number | ((attempt: number, signal: AbortSignal) => MaybePromise<number>);
|
|
22
22
|
/**
|
|
23
23
|
* Custom logic to determine if reconnection is required.
|
|
24
24
|
* @param event - The close event that occurred during the connection.
|
|
25
25
|
* @returns A boolean indicating if reconnection should be attempted.
|
|
26
26
|
* @defaultValue `() => true` - Always reconnect
|
|
27
27
|
*/
|
|
28
|
-
shouldReconnect?: (event: CloseEvent) => MaybePromise<boolean>;
|
|
28
|
+
shouldReconnect?: (event: CloseEvent, signal: AbortSignal) => MaybePromise<boolean>;
|
|
29
29
|
/**
|
|
30
30
|
* Message buffering strategy between reconnection attempts.
|
|
31
31
|
* @defaultValue `new FIFOMessageBuffer()`
|
|
@@ -52,49 +52,27 @@ export interface MessageBufferStrategy {
|
|
|
52
52
|
/** Error thrown when reconnection problems occur. */
|
|
53
53
|
export declare class ReconnectingWebSocketError extends TransportError {
|
|
54
54
|
code: "RECONNECTION_LIMIT_REACHED" | "RECONNECTION_STOPPED_BY_USER" | "USER_INITIATED_CLOSE" | "UNKNOWN_ERROR";
|
|
55
|
-
originalError?: unknown
|
|
56
|
-
constructor(code: "RECONNECTION_LIMIT_REACHED" | "RECONNECTION_STOPPED_BY_USER" | "USER_INITIATED_CLOSE" | "UNKNOWN_ERROR", originalError?: unknown
|
|
55
|
+
originalError?: unknown;
|
|
56
|
+
constructor(code: "RECONNECTION_LIMIT_REACHED" | "RECONNECTION_STOPPED_BY_USER" | "USER_INITIATED_CLOSE" | "UNKNOWN_ERROR", originalError?: unknown);
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
59
|
* A WebSocket that automatically reconnects when disconnected.
|
|
60
60
|
* Fully compatible with standard WebSocket API.
|
|
61
61
|
*/
|
|
62
62
|
export declare class ReconnectingWebSocket implements WebSocket {
|
|
63
|
-
/** Controller for handling connection termination. */
|
|
64
|
-
private _terminationController;
|
|
65
|
-
/** WebSocket protocols defined in constructor. */
|
|
66
|
-
private _protocols?;
|
|
67
|
-
/** Non-permanent original instance of WebSocket. */
|
|
68
63
|
private _socket;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
private _eventListeners;
|
|
73
|
-
/** WebSocket event handlers for reconnection. */
|
|
74
|
-
private _onclose;
|
|
75
|
-
/** WebSocket event handlers for reconnection. */
|
|
76
|
-
private _onerror;
|
|
77
|
-
/** WebSocket event handlers for reconnection. */
|
|
78
|
-
private _onmessage;
|
|
79
|
-
/** WebSocket event handlers for reconnection. */
|
|
80
|
-
private _onopen;
|
|
81
|
-
/** Configuration options for WebSocket reconnection. */
|
|
64
|
+
private _protocols?;
|
|
65
|
+
private _listeners;
|
|
66
|
+
private _attempt;
|
|
82
67
|
reconnectOptions: Required<ReconnectingWebSocketOptions>;
|
|
83
|
-
|
|
84
|
-
terminationSignal: AbortSignal;
|
|
85
|
-
/**
|
|
86
|
-
* Creates a new reconnecting WebSocket.
|
|
87
|
-
* @param url - The WebSocket URL to connect to.
|
|
88
|
-
* @param protocols - The WebSocket protocols to use.
|
|
89
|
-
* @param options - The configuration options.
|
|
90
|
-
*/
|
|
68
|
+
readonly reconnectAbortController: AbortController;
|
|
91
69
|
constructor(url: string | URL, protocols?: string | string[], options?: ReconnectingWebSocketOptions);
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
70
|
+
private _createSocket;
|
|
71
|
+
/** Initializes the internal event listeners for the socket. */
|
|
72
|
+
private _setupEventListeners;
|
|
73
|
+
private _open;
|
|
74
|
+
private _close;
|
|
75
|
+
/** Clean up internal resources. */
|
|
98
76
|
private _cleanup;
|
|
99
77
|
get url(): string;
|
|
100
78
|
get readyState(): number;
|
|
@@ -103,14 +81,14 @@ export declare class ReconnectingWebSocket implements WebSocket {
|
|
|
103
81
|
get protocol(): string;
|
|
104
82
|
get binaryType(): BinaryType;
|
|
105
83
|
set binaryType(value: BinaryType);
|
|
106
|
-
readonly
|
|
107
|
-
readonly
|
|
108
|
-
readonly
|
|
109
|
-
readonly
|
|
110
|
-
static readonly
|
|
111
|
-
static readonly
|
|
112
|
-
static readonly
|
|
113
|
-
static readonly
|
|
84
|
+
readonly CONNECTING = 0;
|
|
85
|
+
readonly OPEN = 1;
|
|
86
|
+
readonly CLOSING = 2;
|
|
87
|
+
readonly CLOSED = 3;
|
|
88
|
+
static readonly CONNECTING = 0;
|
|
89
|
+
static readonly OPEN = 1;
|
|
90
|
+
static readonly CLOSING = 2;
|
|
91
|
+
static readonly CLOSED = 3;
|
|
114
92
|
get onclose(): ((this: WebSocket, ev: CloseEvent) => any) | null;
|
|
115
93
|
set onclose(value: ((this: WebSocket, ev: CloseEvent) => any) | null);
|
|
116
94
|
get onerror(): ((this: WebSocket, ev: Event) => any) | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_reconnecting_websocket.d.ts","sourceRoot":"","sources":["../../../../src/src/transports/websocket/_reconnecting_websocket.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAElE,6DAA6D;AAC7D,MAAM,WAAW,4BAA4B;IACzC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"_reconnecting_websocket.d.ts","sourceRoot":"","sources":["../../../../src/src/transports/websocket/_reconnecting_websocket.ts"],"names":[],"mappings":"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"}
|