opentool 0.17.1 → 0.18.0
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/dist/adapters/hyperliquid/browser.d.ts +1 -1
- package/dist/adapters/hyperliquid/browser.js +866 -701
- package/dist/adapters/hyperliquid/browser.js.map +1 -1
- package/dist/adapters/hyperliquid/index.d.ts +2 -2
- package/dist/adapters/hyperliquid/index.js +205 -38
- package/dist/adapters/hyperliquid/index.js.map +1 -1
- package/dist/{browser-DA4UUBo1.d.ts → browser-CnpOj35m.d.ts} +66 -17
- package/dist/index.d.ts +1 -1
- package/dist/index.js +204 -37
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/templates/base/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h as WalletFullContext } from '../../types-BaTmu0gS.js';
|
|
2
2
|
import { StoreOptions, StoreResponse } from '../../store/index.js';
|
|
3
|
-
import {
|
|
4
|
-
export { D as DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, a as DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, H as
|
|
3
|
+
import { k as HyperliquidEnvironment, bb as NonceSource, x as HyperliquidOrderIntent, n as HyperliquidGrouping, bc as toApiDecimal, bd as createL1ActionHash, be as splitSignature } from '../../browser-CnpOj35m.js';
|
|
4
|
+
export { D as DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, a as DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, H as HYPERLIQUID_HIP3_DEXES, b as HyperliquidAbstraction, c as HyperliquidAccountMode, d as HyperliquidActiveAsset, e as HyperliquidApiError, f as HyperliquidApproximateLiquidationParams, g as HyperliquidBar, h as HyperliquidBarResolution, i as HyperliquidBuilderApprovalError, j as HyperliquidBuilderFee, l as HyperliquidExchangeClient, m as HyperliquidExchangeResponse, o as HyperliquidGuardError, p as HyperliquidHip3Dex, q as HyperliquidIndicatorBar, r as HyperliquidInfoClient, s as HyperliquidMarketDescriptor, t as HyperliquidMarketDescriptorInput, u as HyperliquidMarketIdentityInput, v as HyperliquidMarketType, w as HyperliquidOpenOrderLike, y as HyperliquidParsedSymbol, z as HyperliquidParsedSymbolKind, A as HyperliquidPerpMarketInfo, B as HyperliquidPlaceOrderWithTpSlOptions, C as HyperliquidPlacePositionTpSlOptions, E as HyperliquidProfileAsset, F as HyperliquidProfileAssetInput, G as HyperliquidProfileChain, I as HyperliquidResolvedMarketDescriptor, J as HyperliquidSpotMarketInfo, K as HyperliquidTermsError, L as HyperliquidTickSize, M as HyperliquidTimeInForce, N as HyperliquidTpSlExecutionType, O as HyperliquidTpSlLegInput, P as HyperliquidTriggerOptions, Q as HyperliquidTriggerType, R as MarketIdentity, _ as __hyperliquidMarketDataInternals, S as batchModifyHyperliquidOrders, T as buildHyperliquidMarketDescriptor, U as buildHyperliquidMarketIdentity, V as buildHyperliquidProfileAssets, W as buildHyperliquidSpotUsdPriceMap, X as cancelAllHyperliquidOrders, Y as cancelHyperliquidOrders, Z as cancelHyperliquidOrdersByCloid, $ as cancelHyperliquidTwapOrder, a0 as computeHyperliquidMarketIocLimitPrice, a1 as createHyperliquidSubAccount, a2 as createMonotonicNonceFactory, a3 as estimateHyperliquidLiquidationPrice, a4 as extractHyperliquidDex, a5 as extractHyperliquidOrderIds, a6 as fetchHyperliquidActiveAsset, a7 as fetchHyperliquidAllMids, a8 as fetchHyperliquidAssetCtxs, a9 as fetchHyperliquidBars, aa as fetchHyperliquidDexMeta, ab as fetchHyperliquidDexMetaAndAssetCtxs, ac as fetchHyperliquidFrontendOpenOrders, ad as fetchHyperliquidFrontendOpenOrdersAcrossDexes, ae as fetchHyperliquidHistoricalOrders, af as fetchHyperliquidMeta, ag as fetchHyperliquidMetaAndAssetCtxs, ah as fetchHyperliquidOpenOrders, ai as fetchHyperliquidOpenOrdersAcrossDexes, aj as fetchHyperliquidOrderStatus, ak as fetchHyperliquidPerpMarketInfo, al as fetchHyperliquidPreTransferCheck, am as fetchHyperliquidResolvedMarketDescriptor, an as fetchHyperliquidSizeDecimals, ao as fetchHyperliquidSpotAccountValue, ap as fetchHyperliquidSpotAssetCtxs, aq as fetchHyperliquidSpotClearinghouseState, ar as fetchHyperliquidSpotMarketInfo, as as fetchHyperliquidSpotMeta, at as fetchHyperliquidSpotMetaAndAssetCtxs, au as fetchHyperliquidSpotTickSize, av as fetchHyperliquidSpotUsdPriceMap, aw as fetchHyperliquidTickSize, ax as fetchHyperliquidUserFills, ay as fetchHyperliquidUserFillsByTime, az as fetchHyperliquidUserRateLimit, aA as formatHyperliquidMarketablePrice, aB as formatHyperliquidOrderSize, aC as formatHyperliquidPrice, aD as formatHyperliquidSize, aE as getKnownHyperliquidDexes, aF as isHyperliquidSpotSymbol, aG as modifyHyperliquidOrder, aH as normalizeHyperliquidBaseSymbol, aI as normalizeHyperliquidIndicatorBars, aJ as normalizeHyperliquidMetaSymbol, aK as normalizeSpotTokenName, aL as parseHyperliquidSymbol, aM as parseSpotPairSymbol, aN as placeHyperliquidOrderWithTpSl, aO as placeHyperliquidPositionTpSl, aP as placeHyperliquidTwapOrder, aQ as reserveHyperliquidRequestWeight, aR as resolveHyperliquidAbstractionFromMode, aS as resolveHyperliquidErrorDetail, aT as resolveHyperliquidLeverageMode, aU as resolveHyperliquidMarketDataCoin, aV as resolveHyperliquidOrderRef, aW as resolveHyperliquidOrderSymbol, aX as resolveHyperliquidPair, aY as resolveHyperliquidPerpSymbol, aZ as resolveHyperliquidProfileChain, a_ as resolveHyperliquidSpotSymbol, a$ as resolveHyperliquidSymbol, b0 as resolveSpotMidCandidates, b1 as resolveSpotTokenCandidates, b2 as roundHyperliquidPriceToTick, b3 as scheduleHyperliquidCancel, b4 as sendHyperliquidSpot, b5 as setHyperliquidAccountAbstractionMode, b6 as setHyperliquidPortfolioMargin, b7 as supportsHyperliquidBuilderFee, b8 as transferHyperliquidSubAccount, b9 as updateHyperliquidIsolatedMargin, ba as updateHyperliquidLeverage } from '../../browser-CnpOj35m.js';
|
|
5
5
|
import 'viem';
|
|
6
6
|
import 'viem/accounts';
|
|
7
7
|
|
|
@@ -914,6 +914,12 @@ function parseHyperliquidSymbol(value) {
|
|
|
914
914
|
leverageMode: "cross"
|
|
915
915
|
};
|
|
916
916
|
}
|
|
917
|
+
function normalizeHyperliquidQuoteSymbol(value) {
|
|
918
|
+
if (typeof value !== "string") return null;
|
|
919
|
+
const trimmed = value.trim();
|
|
920
|
+
if (!trimmed) return null;
|
|
921
|
+
return canonicalizeHyperliquidTokenCase(trimmed).toUpperCase();
|
|
922
|
+
}
|
|
917
923
|
function normalizeSpotTokenName2(value) {
|
|
918
924
|
const raw = (value ?? "").trim();
|
|
919
925
|
if (!raw) return "";
|
|
@@ -963,6 +969,69 @@ function resolveHyperliquidPair(value) {
|
|
|
963
969
|
}
|
|
964
970
|
return null;
|
|
965
971
|
}
|
|
972
|
+
function buildHyperliquidMarketDescriptor(input) {
|
|
973
|
+
const rawSymbol = input.symbol?.trim();
|
|
974
|
+
if (!rawSymbol) return null;
|
|
975
|
+
const parsed = parseHyperliquidSymbol(rawSymbol);
|
|
976
|
+
if (!parsed) return null;
|
|
977
|
+
const explicitPair = resolveHyperliquidPair(input.pair);
|
|
978
|
+
const explicitQuote = normalizeHyperliquidQuoteSymbol(input.quote);
|
|
979
|
+
if (parsed.kind === "spot" || parsed.kind === "spotIndex") {
|
|
980
|
+
const canonicalPair2 = explicitPair ?? parsed.pair;
|
|
981
|
+
const pair = canonicalPair2;
|
|
982
|
+
const [pairBase, pairQuote] = (canonicalPair2 ?? "").split("/").map((part) => canonicalizeHyperliquidTokenCase(part).toUpperCase());
|
|
983
|
+
const base2 = pairBase || parsed.base;
|
|
984
|
+
const quote2 = pairQuote || explicitQuote || parsed.quote;
|
|
985
|
+
const normalized2 = pair ?? parsed.normalized;
|
|
986
|
+
const routeTicker = pair && base2 && quote2 ? `${base2}-${quote2}` : parsed.routeTicker;
|
|
987
|
+
const displaySymbol2 = input.displaySymbol?.trim() || (pair && base2 && quote2 ? `${base2}-${quote2}` : parsed.displaySymbol);
|
|
988
|
+
const orderSymbol2 = input.orderSymbol?.trim() || resolveHyperliquidOrderSymbol(normalized2);
|
|
989
|
+
const marketDataCoin2 = input.marketDataCoin?.trim() || (typeof input.spotIndex === "number" ? `@${input.spotIndex}` : resolveHyperliquidMarketDataCoin(normalized2));
|
|
990
|
+
if (!orderSymbol2 || !marketDataCoin2) return null;
|
|
991
|
+
return {
|
|
992
|
+
rawSymbol,
|
|
993
|
+
kind: parsed.kind,
|
|
994
|
+
routeTicker,
|
|
995
|
+
displaySymbol: displaySymbol2,
|
|
996
|
+
normalized: normalized2,
|
|
997
|
+
orderSymbol: orderSymbol2,
|
|
998
|
+
marketDataCoin: marketDataCoin2,
|
|
999
|
+
base: base2 ?? null,
|
|
1000
|
+
quote: quote2 ?? null,
|
|
1001
|
+
pair,
|
|
1002
|
+
canonicalPair: pair,
|
|
1003
|
+
dex: null,
|
|
1004
|
+
leverageMode: "cross",
|
|
1005
|
+
spotIndex: input.spotIndex ?? null,
|
|
1006
|
+
assetId: input.assetId ?? null
|
|
1007
|
+
};
|
|
1008
|
+
}
|
|
1009
|
+
const base = parsed.base;
|
|
1010
|
+
const quote = explicitQuote;
|
|
1011
|
+
const canonicalPair = base && quote ? `${base}/${quote}` : null;
|
|
1012
|
+
const displaySymbol = input.displaySymbol?.trim() || (canonicalPair ? canonicalPair.replace("/", "-") : parsed.dex ? base ?? parsed.normalized : parsed.displaySymbol);
|
|
1013
|
+
const normalized = parsed.normalized;
|
|
1014
|
+
const orderSymbol = input.orderSymbol?.trim() || resolveHyperliquidOrderSymbol(normalized);
|
|
1015
|
+
const marketDataCoin = input.marketDataCoin?.trim() || resolveHyperliquidMarketDataCoin(normalized);
|
|
1016
|
+
if (!orderSymbol || !marketDataCoin) return null;
|
|
1017
|
+
return {
|
|
1018
|
+
rawSymbol,
|
|
1019
|
+
kind: parsed.kind,
|
|
1020
|
+
routeTicker: parsed.routeTicker,
|
|
1021
|
+
displaySymbol,
|
|
1022
|
+
normalized,
|
|
1023
|
+
orderSymbol,
|
|
1024
|
+
marketDataCoin,
|
|
1025
|
+
base,
|
|
1026
|
+
quote,
|
|
1027
|
+
pair: null,
|
|
1028
|
+
canonicalPair,
|
|
1029
|
+
dex: parsed.dex,
|
|
1030
|
+
leverageMode: parsed.leverageMode,
|
|
1031
|
+
spotIndex: input.spotIndex ?? null,
|
|
1032
|
+
assetId: input.assetId ?? null
|
|
1033
|
+
};
|
|
1034
|
+
}
|
|
966
1035
|
function resolveHyperliquidLeverageMode(symbol) {
|
|
967
1036
|
return symbol.includes(":") ? "isolated" : "cross";
|
|
968
1037
|
}
|
|
@@ -1106,6 +1175,14 @@ function resolveHyperliquidSpotSymbol(asset, defaultQuote = "USDC") {
|
|
|
1106
1175
|
}
|
|
1107
1176
|
|
|
1108
1177
|
// src/adapters/hyperliquid/info.ts
|
|
1178
|
+
var HYPERLIQUID_HIP3_DEXES = [
|
|
1179
|
+
"xyz",
|
|
1180
|
+
"flx",
|
|
1181
|
+
"vntl",
|
|
1182
|
+
"hyna",
|
|
1183
|
+
"km",
|
|
1184
|
+
"cash"
|
|
1185
|
+
];
|
|
1109
1186
|
async function postInfo(environment, payload) {
|
|
1110
1187
|
const baseUrl = API_BASES[environment];
|
|
1111
1188
|
const response = await fetch(`${baseUrl}/info`, {
|
|
@@ -1122,6 +1199,27 @@ async function postInfo(environment, payload) {
|
|
|
1122
1199
|
}
|
|
1123
1200
|
return data;
|
|
1124
1201
|
}
|
|
1202
|
+
function mergeHyperliquidOpenOrders(batches) {
|
|
1203
|
+
const merged = /* @__PURE__ */ new Map();
|
|
1204
|
+
for (const batch of batches) {
|
|
1205
|
+
for (const order of batch) {
|
|
1206
|
+
const oid = typeof order.oid === "number" || typeof order.oid === "string" ? String(order.oid) : "no-oid";
|
|
1207
|
+
const cloid = typeof order.cloid === "string" && order.cloid.trim().length > 0 ? order.cloid : "no-cloid";
|
|
1208
|
+
merged.set(`${oid}:${cloid}`, order);
|
|
1209
|
+
}
|
|
1210
|
+
}
|
|
1211
|
+
return [...merged.values()];
|
|
1212
|
+
}
|
|
1213
|
+
function readNumber(value) {
|
|
1214
|
+
if (typeof value === "number") {
|
|
1215
|
+
return Number.isFinite(value) ? value : null;
|
|
1216
|
+
}
|
|
1217
|
+
if (typeof value === "string" && value.trim().length > 0) {
|
|
1218
|
+
const parsed = Number.parseFloat(value);
|
|
1219
|
+
return Number.isFinite(parsed) ? parsed : null;
|
|
1220
|
+
}
|
|
1221
|
+
return null;
|
|
1222
|
+
}
|
|
1125
1223
|
var HyperliquidInfoClient = class {
|
|
1126
1224
|
constructor(environment = "mainnet") {
|
|
1127
1225
|
this.environment = environment;
|
|
@@ -1196,6 +1294,13 @@ var HyperliquidInfoClient = class {
|
|
|
1196
1294
|
environment: this.environment
|
|
1197
1295
|
});
|
|
1198
1296
|
}
|
|
1297
|
+
activeAsset(user, symbol) {
|
|
1298
|
+
return fetchHyperliquidActiveAsset({
|
|
1299
|
+
user,
|
|
1300
|
+
symbol,
|
|
1301
|
+
environment: this.environment
|
|
1302
|
+
});
|
|
1303
|
+
}
|
|
1199
1304
|
};
|
|
1200
1305
|
async function fetchHyperliquidMeta(environment = "mainnet") {
|
|
1201
1306
|
return postInfo(environment, { type: "meta" });
|
|
@@ -1206,6 +1311,9 @@ async function fetchHyperliquidDexMeta(environment = "mainnet", dex) {
|
|
|
1206
1311
|
async function fetchHyperliquidMetaAndAssetCtxs(environment = "mainnet") {
|
|
1207
1312
|
return postInfo(environment, { type: "metaAndAssetCtxs" });
|
|
1208
1313
|
}
|
|
1314
|
+
async function fetchHyperliquidDexMetaAndAssetCtxs(environment = "mainnet", dex) {
|
|
1315
|
+
return postInfo(environment, { type: "metaAndAssetCtxs", dex });
|
|
1316
|
+
}
|
|
1209
1317
|
async function fetchHyperliquidSpotMeta(environment = "mainnet") {
|
|
1210
1318
|
return postInfo(environment, { type: "spotMeta" });
|
|
1211
1319
|
}
|
|
@@ -1220,13 +1328,18 @@ async function fetchHyperliquidSpotAssetCtxs(environment = "mainnet") {
|
|
|
1220
1328
|
}
|
|
1221
1329
|
async function fetchHyperliquidOpenOrders(params) {
|
|
1222
1330
|
const env = params.environment ?? "mainnet";
|
|
1223
|
-
return postInfo(env, {
|
|
1331
|
+
return postInfo(env, {
|
|
1332
|
+
type: "openOrders",
|
|
1333
|
+
user: normalizeAddress(params.user),
|
|
1334
|
+
...params.dex ? { dex: params.dex.trim().toLowerCase() } : {}
|
|
1335
|
+
});
|
|
1224
1336
|
}
|
|
1225
1337
|
async function fetchHyperliquidFrontendOpenOrders(params) {
|
|
1226
1338
|
const env = params.environment ?? "mainnet";
|
|
1227
1339
|
return postInfo(env, {
|
|
1228
1340
|
type: "frontendOpenOrders",
|
|
1229
|
-
user: normalizeAddress(params.user)
|
|
1341
|
+
user: normalizeAddress(params.user),
|
|
1342
|
+
...params.dex ? { dex: params.dex.trim().toLowerCase() } : {}
|
|
1230
1343
|
});
|
|
1231
1344
|
}
|
|
1232
1345
|
async function fetchHyperliquidOrderStatus(params) {
|
|
@@ -1241,7 +1354,8 @@ async function fetchHyperliquidHistoricalOrders(params) {
|
|
|
1241
1354
|
const env = params.environment ?? "mainnet";
|
|
1242
1355
|
return postInfo(env, {
|
|
1243
1356
|
type: "historicalOrders",
|
|
1244
|
-
user: normalizeAddress(params.user)
|
|
1357
|
+
user: normalizeAddress(params.user),
|
|
1358
|
+
...params.dex ? { dex: params.dex.trim().toLowerCase() } : {}
|
|
1245
1359
|
});
|
|
1246
1360
|
}
|
|
1247
1361
|
async function fetchHyperliquidUserFills(params) {
|
|
@@ -1282,6 +1396,59 @@ async function fetchHyperliquidSpotClearinghouseState(params) {
|
|
|
1282
1396
|
user: normalizeAddress(params.user)
|
|
1283
1397
|
});
|
|
1284
1398
|
}
|
|
1399
|
+
function getKnownHyperliquidDexes(environment = "mainnet") {
|
|
1400
|
+
return environment === "mainnet" ? [...HYPERLIQUID_HIP3_DEXES] : [];
|
|
1401
|
+
}
|
|
1402
|
+
async function fetchHyperliquidOpenOrdersAcrossDexes(params) {
|
|
1403
|
+
const environment = params.environment ?? "mainnet";
|
|
1404
|
+
const requests = [
|
|
1405
|
+
...params.includePrimary === false ? [] : [fetchHyperliquidOpenOrders({ environment, user: params.user })],
|
|
1406
|
+
...getKnownHyperliquidDexes(environment).filter((dex) => !(params.dexes && !params.dexes.includes(dex))).map(
|
|
1407
|
+
(dex) => fetchHyperliquidOpenOrders({
|
|
1408
|
+
environment,
|
|
1409
|
+
user: params.user,
|
|
1410
|
+
dex
|
|
1411
|
+
})
|
|
1412
|
+
)
|
|
1413
|
+
];
|
|
1414
|
+
const batches = await Promise.all(requests);
|
|
1415
|
+
return mergeHyperliquidOpenOrders(batches);
|
|
1416
|
+
}
|
|
1417
|
+
async function fetchHyperliquidFrontendOpenOrdersAcrossDexes(params) {
|
|
1418
|
+
const environment = params.environment ?? "mainnet";
|
|
1419
|
+
const requests = [
|
|
1420
|
+
...params.includePrimary === false ? [] : [fetchHyperliquidFrontendOpenOrders({ environment, user: params.user })],
|
|
1421
|
+
...getKnownHyperliquidDexes(environment).filter((dex) => !(params.dexes && !params.dexes.includes(dex))).map(
|
|
1422
|
+
(dex) => fetchHyperliquidFrontendOpenOrders({
|
|
1423
|
+
environment,
|
|
1424
|
+
user: params.user,
|
|
1425
|
+
dex
|
|
1426
|
+
})
|
|
1427
|
+
)
|
|
1428
|
+
];
|
|
1429
|
+
const batches = await Promise.all(requests);
|
|
1430
|
+
return mergeHyperliquidOpenOrders(batches);
|
|
1431
|
+
}
|
|
1432
|
+
async function fetchHyperliquidActiveAsset(params) {
|
|
1433
|
+
const environment = params.environment ?? "mainnet";
|
|
1434
|
+
const coin = resolveHyperliquidOrderSymbol(params.symbol);
|
|
1435
|
+
if (!coin) {
|
|
1436
|
+
throw new Error(`Unable to resolve Hyperliquid active asset symbol: ${params.symbol}`);
|
|
1437
|
+
}
|
|
1438
|
+
const raw = await postInfo(environment, {
|
|
1439
|
+
type: "activeAssetData",
|
|
1440
|
+
user: normalizeAddress(params.user),
|
|
1441
|
+
coin
|
|
1442
|
+
});
|
|
1443
|
+
const record = raw && typeof raw === "object" && !Array.isArray(raw) ? raw : null;
|
|
1444
|
+
const leverageRecord = record?.leverage && typeof record.leverage === "object" && !Array.isArray(record.leverage) ? record.leverage : null;
|
|
1445
|
+
return {
|
|
1446
|
+
coin,
|
|
1447
|
+
leverage: leverageRecord && "value" in leverageRecord ? readNumber(leverageRecord.value) : readNumber(record?.leverage),
|
|
1448
|
+
leverageType: leverageRecord && typeof leverageRecord.type === "string" ? leverageRecord.type : null,
|
|
1449
|
+
raw
|
|
1450
|
+
};
|
|
1451
|
+
}
|
|
1285
1452
|
|
|
1286
1453
|
// src/adapters/hyperliquid/exchange.ts
|
|
1287
1454
|
function resolveRequiredExchangeNonce(options) {
|
|
@@ -2884,47 +3051,47 @@ async function fetchHyperliquidResolvedMarketDescriptor(params) {
|
|
|
2884
3051
|
quote: parsed.quote ?? "USDC",
|
|
2885
3052
|
...params.mids !== void 0 ? { mids: params.mids } : {}
|
|
2886
3053
|
});
|
|
2887
|
-
const
|
|
2888
|
-
if (!
|
|
3054
|
+
const orderSymbol = resolveHyperliquidOrderSymbol(spotInfo.symbol);
|
|
3055
|
+
if (!orderSymbol) {
|
|
2889
3056
|
throw new Error(`Unable to resolve Hyperliquid spot order symbol: ${params.symbol}`);
|
|
2890
3057
|
}
|
|
2891
|
-
|
|
2892
|
-
|
|
2893
|
-
|
|
2894
|
-
|
|
3058
|
+
const descriptor2 = buildHyperliquidMarketDescriptor({
|
|
3059
|
+
symbol: params.symbol,
|
|
3060
|
+
pair: spotInfo.symbol,
|
|
3061
|
+
quote: spotInfo.quote,
|
|
2895
3062
|
displaySymbol: `${spotInfo.base}-${spotInfo.quote}`,
|
|
2896
|
-
|
|
2897
|
-
orderSymbol: orderSymbol2,
|
|
3063
|
+
orderSymbol,
|
|
2898
3064
|
marketDataCoin: `@${spotInfo.marketIndex}`,
|
|
2899
|
-
base: spotInfo.base,
|
|
2900
|
-
quote: spotInfo.quote,
|
|
2901
|
-
pair: spotInfo.symbol,
|
|
2902
|
-
dex: null,
|
|
2903
|
-
leverageMode: "cross",
|
|
2904
3065
|
spotIndex: spotInfo.marketIndex,
|
|
2905
3066
|
assetId: spotInfo.assetId
|
|
2906
|
-
};
|
|
2907
|
-
|
|
2908
|
-
|
|
2909
|
-
|
|
2910
|
-
|
|
3067
|
+
});
|
|
3068
|
+
if (!descriptor2) {
|
|
3069
|
+
throw new Error(`Unable to build Hyperliquid spot market descriptor: ${params.symbol}`);
|
|
3070
|
+
}
|
|
3071
|
+
return descriptor2;
|
|
3072
|
+
}
|
|
3073
|
+
const quote = parsed.dex ? await (async () => {
|
|
3074
|
+
const dex = parsed.dex;
|
|
3075
|
+
if (!dex) return null;
|
|
3076
|
+
const [dexMetaAndCtxs, spotMetaRaw] = await Promise.all([
|
|
3077
|
+
fetchHyperliquidDexMetaAndAssetCtxs(params.environment, dex),
|
|
3078
|
+
fetchHyperliquidSpotMeta(params.environment)
|
|
3079
|
+
]);
|
|
3080
|
+
const metaHeader = Array.isArray(dexMetaAndCtxs) && dexMetaAndCtxs.length > 0 ? dexMetaAndCtxs[0] : null;
|
|
3081
|
+
const collateralToken = typeof metaHeader?.collateralToken === "number" ? metaHeader.collateralToken : null;
|
|
3082
|
+
if (collateralToken == null) return null;
|
|
3083
|
+
const spotMeta = spotMetaRaw;
|
|
3084
|
+
const token = (spotMeta.tokens ?? []).find((entry) => entry?.index === collateralToken) ?? null;
|
|
3085
|
+
return normalizeSpotTokenName2(token?.name).toUpperCase() || null;
|
|
3086
|
+
})() : "USDC";
|
|
3087
|
+
const descriptor = buildHyperliquidMarketDescriptor({
|
|
3088
|
+
symbol: params.symbol,
|
|
3089
|
+
...quote ? { quote } : {}
|
|
3090
|
+
});
|
|
3091
|
+
if (!descriptor) {
|
|
3092
|
+
throw new Error(`Unable to build Hyperliquid market descriptor: ${params.symbol}`);
|
|
2911
3093
|
}
|
|
2912
|
-
return
|
|
2913
|
-
rawSymbol: params.symbol,
|
|
2914
|
-
kind: parsed.kind,
|
|
2915
|
-
routeTicker: parsed.routeTicker,
|
|
2916
|
-
displaySymbol: parsed.displaySymbol,
|
|
2917
|
-
normalized: parsed.normalized,
|
|
2918
|
-
orderSymbol,
|
|
2919
|
-
marketDataCoin: parsed.normalized,
|
|
2920
|
-
base: parsed.base,
|
|
2921
|
-
quote: parsed.quote,
|
|
2922
|
-
pair: parsed.pair,
|
|
2923
|
-
dex: parsed.dex,
|
|
2924
|
-
leverageMode: parsed.leverageMode,
|
|
2925
|
-
spotIndex: null,
|
|
2926
|
-
assetId: null
|
|
2927
|
-
};
|
|
3094
|
+
return descriptor;
|
|
2928
3095
|
}
|
|
2929
3096
|
async function fetchHyperliquidSizeDecimals(params) {
|
|
2930
3097
|
const { symbol, environment } = params;
|
|
@@ -3916,6 +4083,6 @@ var __hyperliquidInternals = {
|
|
|
3916
4083
|
splitSignature
|
|
3917
4084
|
};
|
|
3918
4085
|
|
|
3919
|
-
export { DEFAULT_HYPERLIQUID_CADENCE_CRON, DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, HyperliquidApiError, HyperliquidBuilderApprovalError, HyperliquidExchangeClient, HyperliquidGuardError, HyperliquidInfoClient, HyperliquidTermsError, __hyperliquidInternals, __hyperliquidMarketDataInternals, approveHyperliquidBuilderFee, batchModifyHyperliquidOrders, buildHyperliquidMarketIdentity, buildHyperliquidProfileAssets, buildHyperliquidSpotUsdPriceMap, cancelAllHyperliquidOrders, cancelHyperliquidOrders, cancelHyperliquidOrdersByCloid, cancelHyperliquidTwapOrder, clampHyperliquidAbs, clampHyperliquidFloat, clampHyperliquidInt, computeHyperliquidMarketIocLimitPrice, createHyperliquidSubAccount, createMonotonicNonceFactory, depositToHyperliquidBridge, estimateHyperliquidLiquidationPrice, extractHyperliquidDex, extractHyperliquidOrderIds, fetchHyperliquidAllMids, fetchHyperliquidAssetCtxs, fetchHyperliquidBars, fetchHyperliquidClearinghouseState, fetchHyperliquidDexMeta, fetchHyperliquidFrontendOpenOrders, fetchHyperliquidHistoricalOrders, fetchHyperliquidMeta, fetchHyperliquidMetaAndAssetCtxs, fetchHyperliquidOpenOrders, fetchHyperliquidOrderStatus, fetchHyperliquidPerpMarketInfo, fetchHyperliquidPreTransferCheck, fetchHyperliquidResolvedMarketDescriptor, fetchHyperliquidSizeDecimals, fetchHyperliquidSpotAccountValue, fetchHyperliquidSpotAssetCtxs, fetchHyperliquidSpotClearinghouseState, fetchHyperliquidSpotMarketInfo, fetchHyperliquidSpotMeta, fetchHyperliquidSpotMetaAndAssetCtxs, fetchHyperliquidSpotTickSize, fetchHyperliquidSpotUsdPriceMap, fetchHyperliquidTickSize, fetchHyperliquidUserFills, fetchHyperliquidUserFillsByTime, fetchHyperliquidUserRateLimit, formatHyperliquidMarketablePrice, formatHyperliquidOrderSize, formatHyperliquidPrice, formatHyperliquidSize, getHyperliquidMaxBuilderFee, isHyperliquidSpotSymbol, modifyHyperliquidOrder, normalizeHyperliquidBaseSymbol, normalizeHyperliquidDcaEntries, normalizeHyperliquidIndicatorBars, normalizeHyperliquidMetaSymbol, normalizeSpotTokenName2 as normalizeSpotTokenName, parseHyperliquidJson, parseHyperliquidSymbol, parseSpotPairSymbol, placeHyperliquidOrder2 as placeHyperliquidOrder, placeHyperliquidOrderWithTpSl, placeHyperliquidPositionTpSl, placeHyperliquidTwapOrder, planHyperliquidTrade, readHyperliquidAccountValue, readHyperliquidNumber, readHyperliquidPerpPosition, readHyperliquidPerpPositionSize, readHyperliquidSpotAccountValue, readHyperliquidSpotBalance, readHyperliquidSpotBalanceSize, recordHyperliquidBuilderApproval, recordHyperliquidTermsAcceptance, reserveHyperliquidRequestWeight, resolveHyperliquidAbstractionFromMode, resolveHyperliquidBudgetUsd, resolveHyperliquidCadenceCron, resolveHyperliquidCadenceFromResolution, resolveHyperliquidChain, resolveHyperliquidChainConfig, resolveHyperliquidDcaSymbolEntries, resolveHyperliquidErrorDetail, resolveHyperliquidHourlyInterval, resolveHyperliquidIntervalCron, resolveHyperliquidLeverageMode, resolveHyperliquidMarketDataCoin, resolveHyperliquidMaxPerRunUsd, resolveHyperliquidOrderRef, resolveHyperliquidOrderSymbol, resolveHyperliquidPair, resolveHyperliquidPerpSymbol, resolveHyperliquidProfileChain, resolveHyperliquidRpcEnvVar, resolveHyperliquidScheduleEvery, resolveHyperliquidScheduleUnit, resolveHyperliquidSpotSymbol, resolveHyperliquidStoreNetwork, resolveHyperliquidSymbol, resolveHyperliquidTargetSize, resolveSpotMidCandidates, resolveSpotTokenCandidates, roundHyperliquidPriceToTick, scheduleHyperliquidCancel, sendHyperliquidSpot, setHyperliquidAccountAbstractionMode, setHyperliquidPortfolioMargin, supportsHyperliquidBuilderFee, transferHyperliquidSubAccount, updateHyperliquidIsolatedMargin, updateHyperliquidLeverage, withdrawFromHyperliquid };
|
|
4086
|
+
export { DEFAULT_HYPERLIQUID_CADENCE_CRON, DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, HYPERLIQUID_HIP3_DEXES, HyperliquidApiError, HyperliquidBuilderApprovalError, HyperliquidExchangeClient, HyperliquidGuardError, HyperliquidInfoClient, HyperliquidTermsError, __hyperliquidInternals, __hyperliquidMarketDataInternals, approveHyperliquidBuilderFee, batchModifyHyperliquidOrders, buildHyperliquidMarketDescriptor, buildHyperliquidMarketIdentity, buildHyperliquidProfileAssets, buildHyperliquidSpotUsdPriceMap, cancelAllHyperliquidOrders, cancelHyperliquidOrders, cancelHyperliquidOrdersByCloid, cancelHyperliquidTwapOrder, clampHyperliquidAbs, clampHyperliquidFloat, clampHyperliquidInt, computeHyperliquidMarketIocLimitPrice, createHyperliquidSubAccount, createMonotonicNonceFactory, depositToHyperliquidBridge, estimateHyperliquidLiquidationPrice, extractHyperliquidDex, extractHyperliquidOrderIds, fetchHyperliquidActiveAsset, fetchHyperliquidAllMids, fetchHyperliquidAssetCtxs, fetchHyperliquidBars, fetchHyperliquidClearinghouseState, fetchHyperliquidDexMeta, fetchHyperliquidDexMetaAndAssetCtxs, fetchHyperliquidFrontendOpenOrders, fetchHyperliquidFrontendOpenOrdersAcrossDexes, fetchHyperliquidHistoricalOrders, fetchHyperliquidMeta, fetchHyperliquidMetaAndAssetCtxs, fetchHyperliquidOpenOrders, fetchHyperliquidOpenOrdersAcrossDexes, fetchHyperliquidOrderStatus, fetchHyperliquidPerpMarketInfo, fetchHyperliquidPreTransferCheck, fetchHyperliquidResolvedMarketDescriptor, fetchHyperliquidSizeDecimals, fetchHyperliquidSpotAccountValue, fetchHyperliquidSpotAssetCtxs, fetchHyperliquidSpotClearinghouseState, fetchHyperliquidSpotMarketInfo, fetchHyperliquidSpotMeta, fetchHyperliquidSpotMetaAndAssetCtxs, fetchHyperliquidSpotTickSize, fetchHyperliquidSpotUsdPriceMap, fetchHyperliquidTickSize, fetchHyperliquidUserFills, fetchHyperliquidUserFillsByTime, fetchHyperliquidUserRateLimit, formatHyperliquidMarketablePrice, formatHyperliquidOrderSize, formatHyperliquidPrice, formatHyperliquidSize, getHyperliquidMaxBuilderFee, getKnownHyperliquidDexes, isHyperliquidSpotSymbol, modifyHyperliquidOrder, normalizeHyperliquidBaseSymbol, normalizeHyperliquidDcaEntries, normalizeHyperliquidIndicatorBars, normalizeHyperliquidMetaSymbol, normalizeSpotTokenName2 as normalizeSpotTokenName, parseHyperliquidJson, parseHyperliquidSymbol, parseSpotPairSymbol, placeHyperliquidOrder2 as placeHyperliquidOrder, placeHyperliquidOrderWithTpSl, placeHyperliquidPositionTpSl, placeHyperliquidTwapOrder, planHyperliquidTrade, readHyperliquidAccountValue, readHyperliquidNumber, readHyperliquidPerpPosition, readHyperliquidPerpPositionSize, readHyperliquidSpotAccountValue, readHyperliquidSpotBalance, readHyperliquidSpotBalanceSize, recordHyperliquidBuilderApproval, recordHyperliquidTermsAcceptance, reserveHyperliquidRequestWeight, resolveHyperliquidAbstractionFromMode, resolveHyperliquidBudgetUsd, resolveHyperliquidCadenceCron, resolveHyperliquidCadenceFromResolution, resolveHyperliquidChain, resolveHyperliquidChainConfig, resolveHyperliquidDcaSymbolEntries, resolveHyperliquidErrorDetail, resolveHyperliquidHourlyInterval, resolveHyperliquidIntervalCron, resolveHyperliquidLeverageMode, resolveHyperliquidMarketDataCoin, resolveHyperliquidMaxPerRunUsd, resolveHyperliquidOrderRef, resolveHyperliquidOrderSymbol, resolveHyperliquidPair, resolveHyperliquidPerpSymbol, resolveHyperliquidProfileChain, resolveHyperliquidRpcEnvVar, resolveHyperliquidScheduleEvery, resolveHyperliquidScheduleUnit, resolveHyperliquidSpotSymbol, resolveHyperliquidStoreNetwork, resolveHyperliquidSymbol, resolveHyperliquidTargetSize, resolveSpotMidCandidates, resolveSpotTokenCandidates, roundHyperliquidPriceToTick, scheduleHyperliquidCancel, sendHyperliquidSpot, setHyperliquidAccountAbstractionMode, setHyperliquidPortfolioMargin, supportsHyperliquidBuilderFee, transferHyperliquidSubAccount, updateHyperliquidIsolatedMargin, updateHyperliquidLeverage, withdrawFromHyperliquid };
|
|
3920
4087
|
//# sourceMappingURL=index.js.map
|
|
3921
4088
|
//# sourceMappingURL=index.js.map
|