hyperliquid-prime 0.1.3 → 0.1.5
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 +87 -30
- package/dist/cli/program.d.ts.map +1 -1
- package/dist/cli/program.js +32 -7
- package/dist/cli/program.js.map +1 -1
- package/dist/collateral/manager.d.ts +2 -2
- package/dist/collateral/manager.d.ts.map +1 -1
- package/dist/collateral/manager.js +487 -91
- package/dist/collateral/manager.js.map +1 -1
- package/dist/config.d.ts +5 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/execution/executor.d.ts +23 -0
- package/dist/execution/executor.d.ts.map +1 -1
- package/dist/execution/executor.js +346 -102
- package/dist/execution/executor.js.map +1 -1
- package/dist/execution/types.d.ts +23 -2
- package/dist/execution/types.d.ts.map +1 -1
- package/dist/index.d.ts +51 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +227 -26
- package/dist/index.js.map +1 -1
- package/dist/market/registry.d.ts +3 -0
- package/dist/market/registry.d.ts.map +1 -1
- package/dist/market/registry.js +53 -23
- package/dist/market/registry.js.map +1 -1
- package/dist/market/types.d.ts +6 -0
- package/dist/market/types.d.ts.map +1 -1
- package/dist/position/manager.d.ts +6 -3
- package/dist/position/manager.d.ts.map +1 -1
- package/dist/position/manager.js +58 -31
- package/dist/position/manager.js.map +1 -1
- package/dist/provider/nktkas.d.ts +38 -3
- package/dist/provider/nktkas.d.ts.map +1 -1
- package/dist/provider/nktkas.js +202 -35
- package/dist/provider/nktkas.js.map +1 -1
- package/dist/provider/provider.d.ts +29 -3
- package/dist/provider/provider.d.ts.map +1 -1
- package/dist/provider/schemas.d.ts +933 -0
- package/dist/provider/schemas.d.ts.map +1 -0
- package/dist/provider/schemas.js +330 -0
- package/dist/provider/schemas.js.map +1 -0
- package/dist/provider/types.d.ts +88 -1
- package/dist/provider/types.d.ts.map +1 -1
- package/dist/router/router.d.ts +3 -3
- package/dist/router/router.d.ts.map +1 -1
- package/dist/router/router.js +98 -25
- package/dist/router/router.js.map +1 -1
- package/dist/router/scorer.d.ts +3 -1
- package/dist/router/scorer.d.ts.map +1 -1
- package/dist/router/scorer.js +28 -5
- package/dist/router/scorer.js.map +1 -1
- package/dist/router/types.d.ts +11 -0
- package/dist/router/types.d.ts.map +1 -1
- package/dist/router/types.js.map +1 -1
- package/dist/types/result.d.ts +16 -0
- package/dist/types/result.d.ts.map +1 -0
- package/dist/types/result.js +9 -0
- package/dist/types/result.js.map +1 -0
- package/dist/utils/asset.d.ts +2 -0
- package/dist/utils/asset.d.ts.map +1 -0
- package/dist/utils/asset.js +18 -0
- package/dist/utils/asset.js.map +1 -0
- package/dist/utils/order-precision.d.ts +16 -0
- package/dist/utils/order-precision.d.ts.map +1 -0
- package/dist/utils/order-precision.js +45 -0
- package/dist/utils/order-precision.js.map +1 -0
- package/package.json +7 -3
package/dist/provider/nktkas.js
CHANGED
|
@@ -1,8 +1,30 @@
|
|
|
1
1
|
import * as hl from "@nktkas/hyperliquid";
|
|
2
|
+
import { createRequire } from "node:module";
|
|
2
3
|
import { privateKeyToAccount } from "viem/accounts";
|
|
4
|
+
import { getWalletAddress } from "@nktkas/hyperliquid/signing";
|
|
3
5
|
import { NoWalletError } from "../utils/errors.js";
|
|
6
|
+
import { MetaSchema, MetaAndAssetCtxsSchema, L2BookSchema, SpotMetaSchema, PerpDexSchema, ClearinghouseStateSchema, SpotClearinghouseStateSchema, OpenOrderSchema, FrontendOpenOrderSchema, HistoricalOrderSchema, FillSchema, FundingRecordSchema, UserFundingEntrySchema, CandleSchema, ReferralResponseSchema, OrderStatusSchema, L2BookUpdateSchema, AllMidsUpdateSchema, TradeSchema, UserEventSchema, } from "./schemas.js";
|
|
4
7
|
const DEFAULT_L2_BOOK_CACHE_TTL_MS = 250;
|
|
5
8
|
const DEFAULT_SPOT_META_CACHE_TTL_MS = 30_000;
|
|
9
|
+
const BALANCE_CACHE_TTL_MS = 30_000;
|
|
10
|
+
const require = createRequire(import.meta.url);
|
|
11
|
+
function resolveNodeWebSocket() {
|
|
12
|
+
try {
|
|
13
|
+
const wsModule = require("ws");
|
|
14
|
+
const ctor = wsModule.WebSocket ?? wsModule.default;
|
|
15
|
+
if (typeof ctor === "function") {
|
|
16
|
+
return ctor;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
// No-op: browser runtimes may not have the "ws" package installed.
|
|
21
|
+
}
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
/** Normalize a user string to 0x-prefixed hex address. */
|
|
25
|
+
function asHexAddress(user) {
|
|
26
|
+
return user;
|
|
27
|
+
}
|
|
6
28
|
export class NktkasProvider {
|
|
7
29
|
info;
|
|
8
30
|
exchange = null;
|
|
@@ -11,29 +33,71 @@ export class NktkasProvider {
|
|
|
11
33
|
wsTransport;
|
|
12
34
|
l2BookCacheTtlMs;
|
|
13
35
|
spotMetaCacheTtlMs;
|
|
36
|
+
signerAddress;
|
|
14
37
|
l2BookCache = new Map();
|
|
15
38
|
l2BookInFlight = new Map();
|
|
16
39
|
spotMetaCache = null;
|
|
17
40
|
spotMetaInFlight = null;
|
|
41
|
+
spotBalanceCache = new Map();
|
|
42
|
+
clearinghouseCache = new Map();
|
|
18
43
|
constructor(config) {
|
|
44
|
+
if (config.privateKey && config.wallet) {
|
|
45
|
+
throw new Error("ProviderConfig cannot include both privateKey and wallet.");
|
|
46
|
+
}
|
|
47
|
+
const nodeWebSocket = resolveNodeWebSocket();
|
|
19
48
|
this.httpTransport = new hl.HttpTransport({
|
|
20
49
|
isTestnet: config.testnet ?? false,
|
|
21
50
|
});
|
|
22
51
|
this.wsTransport = new hl.WebSocketTransport({
|
|
23
52
|
isTestnet: config.testnet ?? false,
|
|
53
|
+
...(nodeWebSocket
|
|
54
|
+
? { reconnect: { WebSocket: nodeWebSocket } }
|
|
55
|
+
: {}),
|
|
24
56
|
});
|
|
25
57
|
this.info = new hl.InfoClient({ transport: this.httpTransport });
|
|
26
58
|
this.subs = new hl.SubscriptionClient({ transport: this.wsTransport });
|
|
27
59
|
this.l2BookCacheTtlMs = config.l2BookCacheTtlMs ?? DEFAULT_L2_BOOK_CACHE_TTL_MS;
|
|
28
60
|
this.spotMetaCacheTtlMs = config.spotMetaCacheTtlMs ?? DEFAULT_SPOT_META_CACHE_TTL_MS;
|
|
29
|
-
|
|
30
|
-
|
|
61
|
+
const wallet = config.privateKey
|
|
62
|
+
? privateKeyToAccount(config.privateKey)
|
|
63
|
+
: config.wallet ?? null;
|
|
64
|
+
this.signerAddress = config.signerAddress
|
|
65
|
+
?? (config.privateKey
|
|
66
|
+
? privateKeyToAccount(config.privateKey).address
|
|
67
|
+
: null);
|
|
68
|
+
if (wallet) {
|
|
69
|
+
const signerAddress = config.signerAddress?.toLowerCase()
|
|
70
|
+
?? (config.privateKey
|
|
71
|
+
? privateKeyToAccount(config.privateKey).address.toLowerCase()
|
|
72
|
+
: undefined);
|
|
73
|
+
// Only use explicit vaultAddress for vault/sub-account routing.
|
|
74
|
+
// walletAddress identifies the logical user for reads/position lookups, but
|
|
75
|
+
// forcing it into defaultVaultAddress can cause "Vault not registered" errors
|
|
76
|
+
// for normal agent-on-master trading flows.
|
|
77
|
+
const configuredVaultAddress = config.vaultAddress?.toLowerCase();
|
|
78
|
+
const defaultVaultAddress = configuredVaultAddress && configuredVaultAddress !== signerAddress
|
|
79
|
+
? configuredVaultAddress
|
|
80
|
+
: undefined;
|
|
31
81
|
this.exchange = new hl.ExchangeClient({
|
|
32
82
|
transport: this.httpTransport,
|
|
33
83
|
wallet,
|
|
84
|
+
...(defaultVaultAddress ? { defaultVaultAddress } : {}),
|
|
34
85
|
});
|
|
35
86
|
}
|
|
36
87
|
}
|
|
88
|
+
static async resolveSignerAddress(config) {
|
|
89
|
+
if (config.signerAddress)
|
|
90
|
+
return config.signerAddress;
|
|
91
|
+
if (config.privateKey) {
|
|
92
|
+
return privateKeyToAccount(config.privateKey).address;
|
|
93
|
+
}
|
|
94
|
+
if (!config.wallet)
|
|
95
|
+
return null;
|
|
96
|
+
return await getWalletAddress(config.wallet);
|
|
97
|
+
}
|
|
98
|
+
getSignerAddress() {
|
|
99
|
+
return this.signerAddress;
|
|
100
|
+
}
|
|
37
101
|
async connect() {
|
|
38
102
|
await this.wsTransport.ready();
|
|
39
103
|
}
|
|
@@ -43,23 +107,25 @@ export class NktkasProvider {
|
|
|
43
107
|
this.l2BookInFlight.clear();
|
|
44
108
|
this.spotMetaCache = null;
|
|
45
109
|
this.spotMetaInFlight = null;
|
|
110
|
+
this.spotBalanceCache.clear();
|
|
111
|
+
this.clearinghouseCache.clear();
|
|
46
112
|
}
|
|
47
113
|
// --- Info methods ---
|
|
48
114
|
async meta(dex) {
|
|
49
115
|
const raw = await this.info.meta(dex !== undefined ? { dex } : undefined);
|
|
50
|
-
return raw;
|
|
116
|
+
return MetaSchema.parse(raw);
|
|
51
117
|
}
|
|
52
118
|
async metaAndAssetCtxs(dex) {
|
|
53
119
|
const raw = await this.info.metaAndAssetCtxs(dex !== undefined ? { dex } : undefined);
|
|
54
|
-
return raw;
|
|
120
|
+
return MetaAndAssetCtxsSchema.parse(raw);
|
|
55
121
|
}
|
|
56
122
|
async perpDexs() {
|
|
57
123
|
const raw = await this.info.perpDexs();
|
|
58
|
-
return raw;
|
|
124
|
+
return raw.map((d) => (d === null ? null : PerpDexSchema.parse(d)));
|
|
59
125
|
}
|
|
60
126
|
async allPerpMetas() {
|
|
61
127
|
const raw = await this.info.allPerpMetas();
|
|
62
|
-
return raw;
|
|
128
|
+
return raw.map((m) => MetaSchema.parse(m));
|
|
63
129
|
}
|
|
64
130
|
async spotMeta() {
|
|
65
131
|
const now = Date.now();
|
|
@@ -71,7 +137,7 @@ export class NktkasProvider {
|
|
|
71
137
|
}
|
|
72
138
|
this.spotMetaInFlight = this.info.spotMeta()
|
|
73
139
|
.then((raw) => {
|
|
74
|
-
const value = raw;
|
|
140
|
+
const value = SpotMetaSchema.parse(raw);
|
|
75
141
|
this.spotMetaCache = {
|
|
76
142
|
value,
|
|
77
143
|
expiresAt: Date.now() + this.spotMetaCacheTtlMs,
|
|
@@ -104,7 +170,7 @@ export class NktkasProvider {
|
|
|
104
170
|
const request = this.info.l2Book(params)
|
|
105
171
|
.then((raw) => {
|
|
106
172
|
const value = raw
|
|
107
|
-
? raw
|
|
173
|
+
? L2BookSchema.parse(raw)
|
|
108
174
|
: {
|
|
109
175
|
coin,
|
|
110
176
|
time: Date.now(),
|
|
@@ -122,51 +188,118 @@ export class NktkasProvider {
|
|
|
122
188
|
this.l2BookInFlight.set(cacheKey, request);
|
|
123
189
|
return request;
|
|
124
190
|
}
|
|
125
|
-
async clearinghouseState(user) {
|
|
126
|
-
const
|
|
127
|
-
|
|
191
|
+
async clearinghouseState(user, dex) {
|
|
192
|
+
const cacheKey = `${user.toLowerCase()}:${dex ?? ""}`;
|
|
193
|
+
const now = Date.now();
|
|
194
|
+
const cached = this.clearinghouseCache.get(cacheKey);
|
|
195
|
+
if (cached && cached.expiresAt > now) {
|
|
196
|
+
return cached.value;
|
|
197
|
+
}
|
|
198
|
+
const addr = asHexAddress(user);
|
|
199
|
+
const raw = await this.info.clearinghouseState(dex !== undefined ? { user: addr, dex } : { user: addr });
|
|
200
|
+
const parsed = ClearinghouseStateSchema.parse(raw);
|
|
201
|
+
this.clearinghouseCache.set(cacheKey, { value: parsed, expiresAt: now + BALANCE_CACHE_TTL_MS });
|
|
202
|
+
return parsed;
|
|
128
203
|
}
|
|
129
204
|
async spotClearinghouseState(user) {
|
|
130
|
-
const
|
|
131
|
-
|
|
205
|
+
const cacheKey = user.toLowerCase();
|
|
206
|
+
const now = Date.now();
|
|
207
|
+
const cached = this.spotBalanceCache.get(cacheKey);
|
|
208
|
+
if (cached && cached.expiresAt > now) {
|
|
209
|
+
return cached.value;
|
|
210
|
+
}
|
|
211
|
+
const raw = await this.info.spotClearinghouseState({ user: asHexAddress(user) });
|
|
212
|
+
const parsed = SpotClearinghouseStateSchema.parse(raw);
|
|
213
|
+
this.spotBalanceCache.set(cacheKey, { value: parsed, expiresAt: now + BALANCE_CACHE_TTL_MS });
|
|
214
|
+
return parsed;
|
|
215
|
+
}
|
|
216
|
+
/** Invalidate balance caches after trades or transfers. */
|
|
217
|
+
invalidateBalanceCaches() {
|
|
218
|
+
this.spotBalanceCache.clear();
|
|
219
|
+
this.clearinghouseCache.clear();
|
|
132
220
|
}
|
|
133
221
|
async openOrders(user) {
|
|
134
|
-
const raw = await this.info.openOrders({ user: user });
|
|
135
|
-
return raw;
|
|
222
|
+
const raw = await this.info.openOrders({ user: asHexAddress(user) });
|
|
223
|
+
return raw.map((o) => OpenOrderSchema.parse(o));
|
|
224
|
+
}
|
|
225
|
+
async frontendOpenOrders(user, dex) {
|
|
226
|
+
const addr = asHexAddress(user);
|
|
227
|
+
const raw = await this.info.frontendOpenOrders(dex !== undefined ? { user: addr, dex } : { user: addr });
|
|
228
|
+
return raw.map((o) => FrontendOpenOrderSchema.parse(o));
|
|
229
|
+
}
|
|
230
|
+
async historicalOrders(user) {
|
|
231
|
+
const raw = await this.info.historicalOrders({ user: asHexAddress(user) });
|
|
232
|
+
return raw.map((o) => HistoricalOrderSchema.parse(o));
|
|
136
233
|
}
|
|
137
234
|
async userFills(user) {
|
|
138
|
-
const raw = await this.info.userFills({ user: user });
|
|
139
|
-
return raw;
|
|
235
|
+
const raw = await this.info.userFills({ user: asHexAddress(user) });
|
|
236
|
+
return raw.map((f) => FillSchema.parse(f));
|
|
237
|
+
}
|
|
238
|
+
async userFillsByTime(user, startTime, endTime, aggregateByTime) {
|
|
239
|
+
const params = {
|
|
240
|
+
user: asHexAddress(user),
|
|
241
|
+
startTime,
|
|
242
|
+
};
|
|
243
|
+
if (endTime !== undefined)
|
|
244
|
+
params.endTime = endTime;
|
|
245
|
+
if (aggregateByTime !== undefined)
|
|
246
|
+
params.aggregateByTime = aggregateByTime;
|
|
247
|
+
const raw = await this.info.userFillsByTime(params);
|
|
248
|
+
return raw.map((f) => FillSchema.parse(f));
|
|
249
|
+
}
|
|
250
|
+
async userFunding(user, startTime, endTime) {
|
|
251
|
+
const params = { user: asHexAddress(user) };
|
|
252
|
+
if (startTime !== undefined)
|
|
253
|
+
params.startTime = startTime;
|
|
254
|
+
if (endTime !== undefined)
|
|
255
|
+
params.endTime = endTime;
|
|
256
|
+
const raw = await this.info.userFunding(params);
|
|
257
|
+
return raw.map((f) => UserFundingEntrySchema.parse(f));
|
|
140
258
|
}
|
|
141
259
|
async fundingHistory(coin, startTime, _endTime) {
|
|
142
260
|
const raw = await this.info.fundingHistory({
|
|
143
261
|
coin,
|
|
144
262
|
startTime,
|
|
145
263
|
});
|
|
146
|
-
return raw;
|
|
264
|
+
return raw.map((f) => FundingRecordSchema.parse(f));
|
|
265
|
+
}
|
|
266
|
+
async candleSnapshot(coin, interval, startTime, endTime) {
|
|
267
|
+
const params = {
|
|
268
|
+
coin,
|
|
269
|
+
interval,
|
|
270
|
+
startTime,
|
|
271
|
+
};
|
|
272
|
+
if (endTime !== undefined)
|
|
273
|
+
params.endTime = endTime;
|
|
274
|
+
const raw = await this.info.candleSnapshot(params);
|
|
275
|
+
return raw.map((c) => CandleSchema.parse(c));
|
|
276
|
+
}
|
|
277
|
+
async referral(user) {
|
|
278
|
+
const raw = await this.info.referral({ user: asHexAddress(user) });
|
|
279
|
+
return ReferralResponseSchema.parse(raw);
|
|
147
280
|
}
|
|
148
281
|
// --- Subscription methods ---
|
|
149
282
|
async subscribeL2Book(coin, cb) {
|
|
150
283
|
const sub = await this.subs.l2Book({ coin }, (data) => {
|
|
151
|
-
cb(data);
|
|
284
|
+
cb(L2BookUpdateSchema.parse(data));
|
|
152
285
|
});
|
|
153
286
|
return () => sub.unsubscribe();
|
|
154
287
|
}
|
|
155
288
|
async subscribeAllMids(cb) {
|
|
156
289
|
const sub = await this.subs.allMids((data) => {
|
|
157
|
-
cb(data);
|
|
290
|
+
cb(AllMidsUpdateSchema.parse(data));
|
|
158
291
|
});
|
|
159
292
|
return () => sub.unsubscribe();
|
|
160
293
|
}
|
|
161
294
|
async subscribeTrades(coin, cb) {
|
|
162
295
|
const sub = await this.subs.trades({ coin }, (data) => {
|
|
163
|
-
cb(data);
|
|
296
|
+
cb(data.map((t) => TradeSchema.parse(t)));
|
|
164
297
|
});
|
|
165
298
|
return () => sub.unsubscribe();
|
|
166
299
|
}
|
|
167
300
|
async subscribeUserEvents(user, cb) {
|
|
168
|
-
const sub = await this.subs.userEvents({ user: user }, (data) => {
|
|
169
|
-
cb(data);
|
|
301
|
+
const sub = await this.subs.userEvents({ user: asHexAddress(user) }, (data) => {
|
|
302
|
+
cb(UserEventSchema.parse(data));
|
|
170
303
|
});
|
|
171
304
|
return () => sub.unsubscribe();
|
|
172
305
|
}
|
|
@@ -187,9 +320,7 @@ export class NktkasProvider {
|
|
|
187
320
|
grouping: "na",
|
|
188
321
|
...(builder ? { builder } : {}),
|
|
189
322
|
});
|
|
190
|
-
return
|
|
191
|
-
statuses: result.response.data.statuses,
|
|
192
|
-
};
|
|
323
|
+
return this.parseOrderResult(result.response.data);
|
|
193
324
|
}
|
|
194
325
|
async cancelOrder(params) {
|
|
195
326
|
const exchange = this.requireExchange();
|
|
@@ -216,14 +347,12 @@ export class NktkasProvider {
|
|
|
216
347
|
grouping: "na",
|
|
217
348
|
...(builder ? { builder } : {}),
|
|
218
349
|
});
|
|
219
|
-
return
|
|
220
|
-
statuses: result.response.data.statuses,
|
|
221
|
-
};
|
|
350
|
+
return this.parseOrderResult(result.response.data);
|
|
222
351
|
}
|
|
223
|
-
async setLeverage(
|
|
352
|
+
async setLeverage(assetIndex, leverage, isCross) {
|
|
224
353
|
const exchange = this.requireExchange();
|
|
225
354
|
await exchange.updateLeverage({
|
|
226
|
-
asset:
|
|
355
|
+
asset: assetIndex,
|
|
227
356
|
leverage,
|
|
228
357
|
isCross,
|
|
229
358
|
});
|
|
@@ -235,20 +364,49 @@ export class NktkasProvider {
|
|
|
235
364
|
}
|
|
236
365
|
async setDexAbstraction(enabled) {
|
|
237
366
|
const exchange = this.requireExchange();
|
|
238
|
-
|
|
367
|
+
// Legacy shim: map old boolean API to current agent abstraction modes.
|
|
368
|
+
await exchange.agentSetAbstraction({
|
|
369
|
+
abstraction: enabled ? "u" : "i",
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
// --- Agent wallet methods ---
|
|
373
|
+
async approveAgent(params) {
|
|
374
|
+
const exchange = this.requireExchange();
|
|
375
|
+
await exchange.approveAgent({
|
|
376
|
+
agentAddress: params.agentAddress,
|
|
377
|
+
agentName: params.agentName ?? null,
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
async extraAgents(user) {
|
|
381
|
+
const result = await this.info.extraAgents({ user: asHexAddress(user) });
|
|
382
|
+
return result;
|
|
383
|
+
}
|
|
384
|
+
// --- Abstraction methods ---
|
|
385
|
+
async userSetAbstraction(params) {
|
|
386
|
+
const exchange = this.requireExchange();
|
|
387
|
+
await exchange.userSetAbstraction({
|
|
388
|
+
user: params.user,
|
|
389
|
+
abstraction: params.abstraction,
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
async agentSetAbstraction(params) {
|
|
393
|
+
const exchange = this.requireExchange();
|
|
394
|
+
await exchange.agentSetAbstraction({
|
|
395
|
+
abstraction: params.abstraction,
|
|
396
|
+
});
|
|
239
397
|
}
|
|
240
398
|
// --- Builder fee methods ---
|
|
241
399
|
async approveBuilderFee(params) {
|
|
242
400
|
const exchange = this.requireExchange();
|
|
243
401
|
await exchange.approveBuilderFee({
|
|
244
402
|
maxFeeRate: params.maxFeeRate,
|
|
245
|
-
builder: params.builder,
|
|
403
|
+
builder: asHexAddress(params.builder),
|
|
246
404
|
});
|
|
247
405
|
}
|
|
248
406
|
async maxBuilderFee(params) {
|
|
249
407
|
const result = await this.info.maxBuilderFee({
|
|
250
|
-
user: params.user,
|
|
251
|
-
builder: params.builder,
|
|
408
|
+
user: asHexAddress(params.user),
|
|
409
|
+
builder: asHexAddress(params.builder),
|
|
252
410
|
});
|
|
253
411
|
return result;
|
|
254
412
|
}
|
|
@@ -258,6 +416,15 @@ export class NktkasProvider {
|
|
|
258
416
|
throw new NoWalletError();
|
|
259
417
|
return this.exchange;
|
|
260
418
|
}
|
|
419
|
+
parseOrderResult(data) {
|
|
420
|
+
const obj = data;
|
|
421
|
+
if (!obj.statuses || !Array.isArray(obj.statuses)) {
|
|
422
|
+
return { statuses: [] };
|
|
423
|
+
}
|
|
424
|
+
return {
|
|
425
|
+
statuses: obj.statuses.map((s) => OrderStatusSchema.parse(s)),
|
|
426
|
+
};
|
|
427
|
+
}
|
|
261
428
|
mapOrderType(ot) {
|
|
262
429
|
if (ot.limit) {
|
|
263
430
|
return { limit: { tif: ot.limit.tif } };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nktkas.js","sourceRoot":"","sources":["../../src/provider/nktkas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nktkas.js","sourceRoot":"","sources":["../../src/provider/nktkas.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Meta, AssetCtx, L2Book, ClearinghouseState, SpotClearinghouseState, SpotMeta, PerpDex, OpenOrder, Fill, FundingRecord, OrderParams, OrderResult, CancelParams, CancelResult, L2BookUpdate, AllMidsUpdate, Trade, UserEvent } from "./types.js";
|
|
1
|
+
import type { Meta, AssetCtx, L2Book, ClearinghouseState, SpotClearinghouseState, SpotMeta, PerpDex, OpenOrder, Fill, FundingRecord, FrontendOpenOrder, HistoricalOrder, UserFundingEntry, OrderParams, OrderResult, CancelParams, CancelResult, L2BookUpdate, AllMidsUpdate, Trade, UserEvent, Candle, CandleInterval, ReferralResponse } from "./types.js";
|
|
2
2
|
export interface HLProvider {
|
|
3
3
|
meta(dex?: string): Promise<Meta>;
|
|
4
4
|
metaAndAssetCtxs(dex?: string): Promise<[Meta, AssetCtx[]]>;
|
|
@@ -7,11 +7,17 @@ export interface HLProvider {
|
|
|
7
7
|
spotMeta(): Promise<SpotMeta>;
|
|
8
8
|
allMids(): Promise<Record<string, string>>;
|
|
9
9
|
l2Book(coin: string, nSigFigs?: number): Promise<L2Book>;
|
|
10
|
-
clearinghouseState(user: string): Promise<ClearinghouseState>;
|
|
10
|
+
clearinghouseState(user: string, dex?: string): Promise<ClearinghouseState>;
|
|
11
11
|
spotClearinghouseState(user: string): Promise<SpotClearinghouseState>;
|
|
12
12
|
openOrders(user: string): Promise<OpenOrder[]>;
|
|
13
|
+
frontendOpenOrders(user: string, dex?: string): Promise<FrontendOpenOrder[]>;
|
|
14
|
+
historicalOrders(user: string): Promise<HistoricalOrder[]>;
|
|
13
15
|
userFills(user: string): Promise<Fill[]>;
|
|
16
|
+
userFillsByTime(user: string, startTime: number, endTime?: number, aggregateByTime?: boolean): Promise<Fill[]>;
|
|
17
|
+
userFunding(user: string, startTime?: number, endTime?: number): Promise<UserFundingEntry[]>;
|
|
14
18
|
fundingHistory(coin: string, startTime: number, endTime?: number): Promise<FundingRecord[]>;
|
|
19
|
+
candleSnapshot(coin: string, interval: CandleInterval, startTime: number, endTime?: number): Promise<Candle[]>;
|
|
20
|
+
referral(user: string): Promise<ReferralResponse>;
|
|
15
21
|
subscribeL2Book(coin: string, cb: (data: L2BookUpdate) => void): Promise<() => Promise<void>>;
|
|
16
22
|
subscribeAllMids(cb: (data: AllMidsUpdate) => void): Promise<() => Promise<void>>;
|
|
17
23
|
subscribeTrades(coin: string, cb: (data: Trade[]) => void): Promise<() => Promise<void>>;
|
|
@@ -33,9 +39,29 @@ export interface HLProvider {
|
|
|
33
39
|
user: string;
|
|
34
40
|
builder: string;
|
|
35
41
|
}): Promise<number>;
|
|
36
|
-
setLeverage(
|
|
42
|
+
setLeverage(assetIndex: number, leverage: number, isCross: boolean): Promise<void>;
|
|
37
43
|
usdClassTransfer(amount: number, toPerp: boolean): Promise<void>;
|
|
44
|
+
/** @deprecated Use userSetAbstraction or agentSetAbstraction instead. */
|
|
38
45
|
setDexAbstraction(enabled: boolean): Promise<void>;
|
|
46
|
+
approveAgent(params: {
|
|
47
|
+
agentAddress: `0x${string}`;
|
|
48
|
+
agentName?: string | null;
|
|
49
|
+
}): Promise<void>;
|
|
50
|
+
extraAgents(user: string): Promise<{
|
|
51
|
+
address: `0x${string}`;
|
|
52
|
+
name: string;
|
|
53
|
+
validUntil: number;
|
|
54
|
+
}[]>;
|
|
55
|
+
userSetAbstraction(params: {
|
|
56
|
+
user: `0x${string}`;
|
|
57
|
+
abstraction: "dexAbstraction" | "unifiedAccount" | "portfolioMargin" | "disabled";
|
|
58
|
+
}): Promise<void>;
|
|
59
|
+
agentSetAbstraction(params: {
|
|
60
|
+
abstraction: "i" | "u" | "p";
|
|
61
|
+
}): Promise<void>;
|
|
62
|
+
getSignerAddress?(): `0x${string}` | null;
|
|
63
|
+
/** Invalidate cached balance data after trades/transfers. Optional. */
|
|
64
|
+
invalidateBalanceCaches?(): void;
|
|
39
65
|
connect(): Promise<void>;
|
|
40
66
|
disconnect(): Promise<void>;
|
|
41
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider/provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,sBAAsB,EACtB,QAAQ,EACR,OAAO,EACP,SAAS,EACT,IAAI,EACJ,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,KAAK,EACL,SAAS,
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider/provider.ts"],"names":[],"mappings":"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"}
|