opentool 0.19.8 → 0.20.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/dist/adapters/hyperliquid/browser.d.ts +1 -1
- package/dist/adapters/hyperliquid/browser.js +156 -3
- package/dist/adapters/hyperliquid/browser.js.map +1 -1
- package/dist/adapters/hyperliquid/index.d.ts +2 -2
- package/dist/adapters/hyperliquid/index.js +156 -3
- package/dist/adapters/hyperliquid/index.js.map +1 -1
- package/dist/{browser-DhzKDXIg.d.ts → browser-z97Ptt32.d.ts} +36 -4
- package/dist/index.d.ts +1 -1
- package/dist/index.js +156 -3
- package/dist/index.js.map +1 -1
- package/package.json +2 -1
- package/templates/base/package.json +1 -1
- package/templates/polymarket-simple-trade/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 { k as HyperliquidEnvironment,
|
|
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
|
|
3
|
+
import { k as HyperliquidEnvironment, bh as NonceSource, x as HyperliquidOrderIntent, n as HyperliquidGrouping, bi as toApiDecimal, bj as createL1ActionHash, bk as splitSignature } from '../../browser-z97Ptt32.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 HyperliquidOutcomeMarketIdentityInput, z as HyperliquidOutcomeSymbol, A as HyperliquidParsedSymbol, B as HyperliquidParsedSymbolKind, C as HyperliquidPerpMarketInfo, E as HyperliquidPlaceOrderWithTpSlOptions, F as HyperliquidPlacePositionTpSlOptions, G as HyperliquidProfileAsset, I as HyperliquidProfileAssetInput, J as HyperliquidProfileChain, K as HyperliquidResolvedMarketDescriptor, L as HyperliquidSpotMarketInfo, M as HyperliquidTermsError, N as HyperliquidTickSize, O as HyperliquidTimeInForce, P as HyperliquidTpSlExecutionType, Q as HyperliquidTpSlLegInput, R as HyperliquidTriggerOptions, S as HyperliquidTriggerType, T as MarketIdentity, _ as __hyperliquidMarketDataInternals, U as batchModifyHyperliquidOrders, V as buildHyperliquidMarketDescriptor, W as buildHyperliquidMarketIdentity, X as buildHyperliquidOutcomeMarketIdentity, Y as buildHyperliquidProfileAssets, Z as buildHyperliquidSpotUsdPriceMap, $ as cancelAllHyperliquidOrders, a0 as cancelHyperliquidOrders, a1 as cancelHyperliquidOrdersByCloid, a2 as cancelHyperliquidTwapOrder, a3 as computeHyperliquidMarketIocLimitPrice, a4 as createHyperliquidSubAccount, a5 as createMonotonicNonceFactory, a6 as estimateHyperliquidLiquidationPrice, a7 as extractHyperliquidDex, a8 as extractHyperliquidOrderIds, a9 as fetchHyperliquidActiveAsset, aa as fetchHyperliquidAllMids, ab as fetchHyperliquidAssetCtxs, ac as fetchHyperliquidBars, ad as fetchHyperliquidDexMeta, ae as fetchHyperliquidDexMetaAndAssetCtxs, af as fetchHyperliquidFrontendOpenOrders, ag as fetchHyperliquidFrontendOpenOrdersAcrossDexes, ah as fetchHyperliquidHistoricalOrders, ai as fetchHyperliquidMeta, aj as fetchHyperliquidMetaAndAssetCtxs, ak as fetchHyperliquidOpenOrders, al as fetchHyperliquidOpenOrdersAcrossDexes, am as fetchHyperliquidOrderStatus, an as fetchHyperliquidOutcomeMeta, ao as fetchHyperliquidPerpMarketInfo, ap as fetchHyperliquidPreTransferCheck, aq as fetchHyperliquidResolvedInfoCoin, ar as fetchHyperliquidResolvedMarketDescriptor, as as fetchHyperliquidSizeDecimals, at as fetchHyperliquidSpotAccountValue, au as fetchHyperliquidSpotAssetCtxs, av as fetchHyperliquidSpotClearinghouseState, aw as fetchHyperliquidSpotMarketInfo, ax as fetchHyperliquidSpotMeta, ay as fetchHyperliquidSpotMetaAndAssetCtxs, az as fetchHyperliquidSpotTickSize, aA as fetchHyperliquidSpotUsdPriceMap, aB as fetchHyperliquidTickSize, aC as fetchHyperliquidUserFills, aD as fetchHyperliquidUserFillsByTime, aE as fetchHyperliquidUserRateLimit, aF as formatHyperliquidMarketablePrice, aG as formatHyperliquidOrderSize, aH as formatHyperliquidPrice, aI as formatHyperliquidSize, aJ as getKnownHyperliquidDexes, aK as isHyperliquidSpotSymbol, aL as modifyHyperliquidOrder, aM as normalizeHyperliquidBaseSymbol, aN as normalizeHyperliquidIndicatorBars, aO as normalizeHyperliquidMetaSymbol, aP as normalizeSpotTokenName, aQ as parseHyperliquidOutcomeSymbol, aR as parseHyperliquidSymbol, aS as parseSpotPairSymbol, aT as placeHyperliquidOrderWithTpSl, aU as placeHyperliquidPositionTpSl, aV as placeHyperliquidTwapOrder, aW as reserveHyperliquidRequestWeight, aX as resolveHyperliquidAbstractionFromMode, aY as resolveHyperliquidErrorDetail, aZ as resolveHyperliquidLeverageMode, a_ as resolveHyperliquidMarketDataCoin, a$ as resolveHyperliquidOrderRef, b0 as resolveHyperliquidOrderSymbol, b1 as resolveHyperliquidPair, b2 as resolveHyperliquidPerpSymbol, b3 as resolveHyperliquidProfileChain, b4 as resolveHyperliquidSpotSymbol, b5 as resolveHyperliquidSymbol, b6 as resolveSpotMidCandidates, b7 as resolveSpotTokenCandidates, b8 as roundHyperliquidPriceToTick, b9 as scheduleHyperliquidCancel, ba as sendHyperliquidSpot, bb as setHyperliquidAccountAbstractionMode, bc as setHyperliquidPortfolioMargin, bd as supportsHyperliquidBuilderFee, be as transferHyperliquidSubAccount, bf as updateHyperliquidIsolatedMargin, bg as updateHyperliquidLeverage } from '../../browser-z97Ptt32.js';
|
|
5
5
|
import 'viem';
|
|
6
6
|
import 'viem/accounts';
|
|
7
7
|
|
|
@@ -205,6 +205,18 @@ var metaCache = /* @__PURE__ */ new Map();
|
|
|
205
205
|
var spotMetaCache = /* @__PURE__ */ new Map();
|
|
206
206
|
var perpDexsCache = /* @__PURE__ */ new Map();
|
|
207
207
|
var UNKNOWN_SYMBOL = "UNKNOWN";
|
|
208
|
+
var OUTCOME_ORDER_ASSET_OFFSET = 1e8;
|
|
209
|
+
var OUTCOME_MARKET_DATA_PATTERN = /^#([0-9]+)$/;
|
|
210
|
+
var OUTCOME_TOKEN_PATTERN = /^\+([0-9]+)$/;
|
|
211
|
+
function parseHyperliquidOutcomeEncoding(value) {
|
|
212
|
+
const trimmed = value?.trim();
|
|
213
|
+
if (!trimmed) return null;
|
|
214
|
+
const encodedMatch = OUTCOME_MARKET_DATA_PATTERN.exec(trimmed) ?? OUTCOME_TOKEN_PATTERN.exec(trimmed);
|
|
215
|
+
if (!encodedMatch) return null;
|
|
216
|
+
const encoding = Number.parseInt(encodedMatch[1] ?? "", 10);
|
|
217
|
+
const side = encoding % 10;
|
|
218
|
+
return Number.isSafeInteger(encoding) && encoding >= 0 && side <= 1 ? encoding : null;
|
|
219
|
+
}
|
|
208
220
|
var extractDexPrefix = (value) => {
|
|
209
221
|
if (!value) return null;
|
|
210
222
|
const trimmed = value.trim();
|
|
@@ -225,6 +237,22 @@ var normalizeHyperliquidBase = (value) => {
|
|
|
225
237
|
if (!normalized || normalized === UNKNOWN_SYMBOL) return null;
|
|
226
238
|
return normalized;
|
|
227
239
|
};
|
|
240
|
+
var normalizeText = (value) => {
|
|
241
|
+
const trimmed = value?.trim();
|
|
242
|
+
return trimmed ? trimmed : null;
|
|
243
|
+
};
|
|
244
|
+
var normalizeSymbolText = (value) => {
|
|
245
|
+
const trimmed = value?.trim().toUpperCase();
|
|
246
|
+
return trimmed ? trimmed : null;
|
|
247
|
+
};
|
|
248
|
+
var normalizeOutcomeMarketDataCoin = (value) => {
|
|
249
|
+
const encoding = parseHyperliquidOutcomeEncoding(value);
|
|
250
|
+
return encoding == null ? null : `#${encoding}`;
|
|
251
|
+
};
|
|
252
|
+
var normalizeOutcomeTokenName = (value) => {
|
|
253
|
+
const encoding = parseHyperliquidOutcomeEncoding(value);
|
|
254
|
+
return encoding == null ? null : `+${encoding}`;
|
|
255
|
+
};
|
|
228
256
|
var normalizeSpotTokenName = (value) => {
|
|
229
257
|
const raw = (value ?? "").trim().toUpperCase();
|
|
230
258
|
if (!raw) return "";
|
|
@@ -279,6 +307,32 @@ function buildHyperliquidMarketIdentity(input) {
|
|
|
279
307
|
canonical_symbol: `perp:hyperliquid:${base}`
|
|
280
308
|
};
|
|
281
309
|
}
|
|
310
|
+
function buildHyperliquidOutcomeMarketIdentity(input) {
|
|
311
|
+
const rawSymbol = normalizeText(input.rawSymbol);
|
|
312
|
+
const marketDataCoin = normalizeOutcomeMarketDataCoin(input.marketDataCoin) ?? normalizeOutcomeMarketDataCoin(rawSymbol) ?? normalizeOutcomeMarketDataCoin(input.outcomeTokenName);
|
|
313
|
+
const outcomeTokenName = normalizeOutcomeTokenName(input.outcomeTokenName) ?? normalizeOutcomeTokenName(rawSymbol) ?? normalizeOutcomeTokenName(input.marketDataCoin);
|
|
314
|
+
const outcomeId = typeof input.outcomeId === "number" && Number.isSafeInteger(input.outcomeId) ? input.outcomeId : typeof input.outcomeId === "string" && input.outcomeId.trim().length > 0 ? Number.parseInt(input.outcomeId, 10) : null;
|
|
315
|
+
const outcomeSide = typeof input.outcomeSide === "number" && Number.isSafeInteger(input.outcomeSide) ? input.outcomeSide : typeof input.outcomeSide === "string" && input.outcomeSide.trim().length > 0 ? Number.parseInt(input.outcomeSide, 10) : null;
|
|
316
|
+
const derivedEncoding = outcomeId != null && outcomeId >= 0 && outcomeSide != null && outcomeSide >= 0 && outcomeSide <= 1 ? outcomeId * 10 + outcomeSide : null;
|
|
317
|
+
const derivedMarketDataCoin = marketDataCoin ?? (derivedEncoding != null ? `#${derivedEncoding}` : null);
|
|
318
|
+
const positionId = normalizeText(input.positionId) ?? derivedMarketDataCoin ?? outcomeTokenName ?? null;
|
|
319
|
+
const protocolMarketId = normalizeText(input.protocolMarketId) ?? normalizeText(input.roundKey) ?? normalizeText(input.seriesKey) ?? (outcomeId != null && outcomeId >= 0 ? `hip4-outcome-${outcomeId}` : null);
|
|
320
|
+
if (!protocolMarketId || !positionId) return null;
|
|
321
|
+
const sideName = normalizeSymbolText(input.sideName);
|
|
322
|
+
const underlying = normalizeSymbolText(input.underlying);
|
|
323
|
+
const base = underlying && sideName ? `${underlying}-${sideName}` : sideName ?? underlying ?? null;
|
|
324
|
+
return {
|
|
325
|
+
market_type: "prediction",
|
|
326
|
+
venue: "hyperliquid",
|
|
327
|
+
environment: input.environment,
|
|
328
|
+
base,
|
|
329
|
+
quote: "USDH",
|
|
330
|
+
raw_symbol: rawSymbol ?? derivedMarketDataCoin ?? outcomeTokenName,
|
|
331
|
+
protocol_market_id: protocolMarketId,
|
|
332
|
+
position_id: positionId,
|
|
333
|
+
canonical_symbol: `prediction:hyperliquid:${protocolMarketId}:${positionId}`
|
|
334
|
+
};
|
|
335
|
+
}
|
|
282
336
|
function resolveHyperliquidAbstractionFromMode(mode) {
|
|
283
337
|
switch (mode) {
|
|
284
338
|
case "standard":
|
|
@@ -502,6 +556,10 @@ async function resolveHyperliquidAssetIndex(args) {
|
|
|
502
556
|
if (!trimmed) {
|
|
503
557
|
throw new Error("Hyperliquid symbol must be a non-empty string.");
|
|
504
558
|
}
|
|
559
|
+
const outcomeEncoding = parseHyperliquidOutcomeEncoding(trimmed);
|
|
560
|
+
if (outcomeEncoding != null) {
|
|
561
|
+
return OUTCOME_ORDER_ASSET_OFFSET + outcomeEncoding;
|
|
562
|
+
}
|
|
505
563
|
if (trimmed.startsWith("@")) {
|
|
506
564
|
const rawIndex = trimmed.slice(1).trim();
|
|
507
565
|
const index = Number(rawIndex);
|
|
@@ -843,6 +901,9 @@ function assertPositiveNumber(value, label) {
|
|
|
843
901
|
|
|
844
902
|
// src/adapters/hyperliquid/symbols.ts
|
|
845
903
|
var UNKNOWN_SYMBOL2 = "UNKNOWN";
|
|
904
|
+
var OUTCOME_ORDER_ASSET_OFFSET2 = 1e8;
|
|
905
|
+
var OUTCOME_MARKET_DATA_PATTERN2 = /^#([0-9]+)$/;
|
|
906
|
+
var OUTCOME_TOKEN_PATTERN2 = /^\+([0-9]+)$/;
|
|
846
907
|
function extractHyperliquidDex(symbol) {
|
|
847
908
|
const idx = symbol.indexOf(":");
|
|
848
909
|
if (idx <= 0) return null;
|
|
@@ -853,6 +914,21 @@ function parseHyperliquidSymbol(value) {
|
|
|
853
914
|
if (!value) return null;
|
|
854
915
|
const trimmed = value.trim();
|
|
855
916
|
if (!trimmed) return null;
|
|
917
|
+
const outcome = parseHyperliquidOutcomeSymbol(trimmed);
|
|
918
|
+
if (outcome) {
|
|
919
|
+
return {
|
|
920
|
+
raw: trimmed,
|
|
921
|
+
kind: "outcome",
|
|
922
|
+
normalized: outcome.marketDataCoin,
|
|
923
|
+
routeTicker: outcome.routeTicker,
|
|
924
|
+
displaySymbol: outcome.displaySymbol,
|
|
925
|
+
base: outcome.sideName,
|
|
926
|
+
quote: "USDH",
|
|
927
|
+
pair: null,
|
|
928
|
+
dex: null,
|
|
929
|
+
leverageMode: "cross"
|
|
930
|
+
};
|
|
931
|
+
}
|
|
856
932
|
if (trimmed.startsWith("@")) {
|
|
857
933
|
return {
|
|
858
934
|
raw: trimmed,
|
|
@@ -914,6 +990,32 @@ function parseHyperliquidSymbol(value) {
|
|
|
914
990
|
leverageMode: "cross"
|
|
915
991
|
};
|
|
916
992
|
}
|
|
993
|
+
function parseHyperliquidOutcomeSymbol(value) {
|
|
994
|
+
const trimmed = value?.trim();
|
|
995
|
+
if (!trimmed) return null;
|
|
996
|
+
const encodedMatch = OUTCOME_MARKET_DATA_PATTERN2.exec(trimmed) ?? OUTCOME_TOKEN_PATTERN2.exec(trimmed);
|
|
997
|
+
if (!encodedMatch) return null;
|
|
998
|
+
const encoding = Number.parseInt(encodedMatch[1] ?? "", 10);
|
|
999
|
+
const outcomeId = Math.floor(encoding / 10);
|
|
1000
|
+
const side = encoding % 10;
|
|
1001
|
+
if (outcomeId == null || side == null || encoding == null || !Number.isSafeInteger(outcomeId) || !Number.isSafeInteger(side) || !Number.isSafeInteger(encoding) || outcomeId < 0 || side < 0 || side > 1 || encoding < 0) {
|
|
1002
|
+
return null;
|
|
1003
|
+
}
|
|
1004
|
+
const marketDataCoin = `#${encoding}`;
|
|
1005
|
+
const sideName = side === 0 ? "YES" : "NO";
|
|
1006
|
+
return {
|
|
1007
|
+
outcomeId,
|
|
1008
|
+
side,
|
|
1009
|
+
encoding,
|
|
1010
|
+
orderSymbol: marketDataCoin,
|
|
1011
|
+
marketDataCoin,
|
|
1012
|
+
tokenName: `+${encoding}`,
|
|
1013
|
+
sideName,
|
|
1014
|
+
displaySymbol: marketDataCoin,
|
|
1015
|
+
routeTicker: marketDataCoin,
|
|
1016
|
+
assetId: OUTCOME_ORDER_ASSET_OFFSET2 + encoding
|
|
1017
|
+
};
|
|
1018
|
+
}
|
|
917
1019
|
function normalizeHyperliquidQuoteSymbol(value) {
|
|
918
1020
|
if (typeof value !== "string") return null;
|
|
919
1021
|
const trimmed = value.trim();
|
|
@@ -994,6 +1096,29 @@ function buildHyperliquidMarketDescriptor(input) {
|
|
|
994
1096
|
if (!parsed) return null;
|
|
995
1097
|
const explicitPair = resolveHyperliquidPair(input.pair);
|
|
996
1098
|
const explicitQuote = normalizeHyperliquidQuoteSymbol(input.quote);
|
|
1099
|
+
if (parsed.kind === "outcome") {
|
|
1100
|
+
const outcome = parseHyperliquidOutcomeSymbol(rawSymbol);
|
|
1101
|
+
if (!outcome) return null;
|
|
1102
|
+
const orderSymbol2 = input.orderSymbol?.trim() || outcome.orderSymbol;
|
|
1103
|
+
const marketDataCoin2 = input.marketDataCoin?.trim() || outcome.marketDataCoin;
|
|
1104
|
+
return {
|
|
1105
|
+
rawSymbol,
|
|
1106
|
+
kind: "outcome",
|
|
1107
|
+
routeTicker: outcome.routeTicker,
|
|
1108
|
+
displaySymbol: input.displaySymbol?.trim() || outcome.displaySymbol,
|
|
1109
|
+
normalized: outcome.marketDataCoin,
|
|
1110
|
+
orderSymbol: orderSymbol2,
|
|
1111
|
+
marketDataCoin: marketDataCoin2,
|
|
1112
|
+
base: outcome.sideName,
|
|
1113
|
+
quote: explicitQuote || "USDH",
|
|
1114
|
+
pair: null,
|
|
1115
|
+
canonicalPair: null,
|
|
1116
|
+
dex: null,
|
|
1117
|
+
leverageMode: "cross",
|
|
1118
|
+
spotIndex: null,
|
|
1119
|
+
assetId: input.assetId ?? outcome.assetId
|
|
1120
|
+
};
|
|
1121
|
+
}
|
|
997
1122
|
if (parsed.kind === "spot" || parsed.kind === "spotIndex") {
|
|
998
1123
|
const canonicalPair2 = explicitPair ?? parsed.pair;
|
|
999
1124
|
const pair = canonicalPair2;
|
|
@@ -1092,6 +1217,7 @@ function parseSpotPairSymbol(symbol) {
|
|
|
1092
1217
|
function isHyperliquidSpotSymbol(symbol) {
|
|
1093
1218
|
const trimmed = symbol.trim();
|
|
1094
1219
|
if (!trimmed) return false;
|
|
1220
|
+
if (parseHyperliquidOutcomeSymbol(trimmed)) return false;
|
|
1095
1221
|
if (trimmed.startsWith("@") || trimmed.includes("/")) return true;
|
|
1096
1222
|
if (trimmed.includes(":")) return false;
|
|
1097
1223
|
return resolveHyperliquidPair(trimmed) !== null;
|
|
@@ -1100,6 +1226,8 @@ function resolveHyperliquidMarketDataCoin(value) {
|
|
|
1100
1226
|
if (!value) return null;
|
|
1101
1227
|
const trimmed = value.trim();
|
|
1102
1228
|
if (!trimmed) return null;
|
|
1229
|
+
const outcome = parseHyperliquidOutcomeSymbol(trimmed);
|
|
1230
|
+
if (outcome) return outcome.marketDataCoin;
|
|
1103
1231
|
if (trimmed.startsWith("@")) return trimmed;
|
|
1104
1232
|
const pair = resolveHyperliquidPair(trimmed);
|
|
1105
1233
|
if (pair && !extractHyperliquidDex(trimmed)) {
|
|
@@ -1108,6 +1236,9 @@ function resolveHyperliquidMarketDataCoin(value) {
|
|
|
1108
1236
|
return trimmed;
|
|
1109
1237
|
}
|
|
1110
1238
|
function supportsHyperliquidBuilderFee(params) {
|
|
1239
|
+
if (parseHyperliquidOutcomeSymbol(params.symbol)) {
|
|
1240
|
+
return false;
|
|
1241
|
+
}
|
|
1111
1242
|
if (!isHyperliquidSpotSymbol(params.symbol)) {
|
|
1112
1243
|
return true;
|
|
1113
1244
|
}
|
|
@@ -1135,6 +1266,8 @@ function resolveHyperliquidOrderSymbol(value) {
|
|
|
1135
1266
|
if (!value) return null;
|
|
1136
1267
|
const trimmed = value.trim();
|
|
1137
1268
|
if (!trimmed) return null;
|
|
1269
|
+
const outcome = parseHyperliquidOutcomeSymbol(trimmed);
|
|
1270
|
+
if (outcome) return outcome.orderSymbol;
|
|
1138
1271
|
if (trimmed.startsWith("@")) return trimmed;
|
|
1139
1272
|
if (trimmed.includes(":")) {
|
|
1140
1273
|
const [rawDex, ...restParts] = trimmed.split(":");
|
|
@@ -1153,6 +1286,8 @@ function resolveHyperliquidOrderSymbol(value) {
|
|
|
1153
1286
|
function resolveHyperliquidSymbol(asset, override) {
|
|
1154
1287
|
const raw = override && override.trim().length > 0 ? override.trim() : asset.trim();
|
|
1155
1288
|
if (!raw) return raw;
|
|
1289
|
+
const outcome = parseHyperliquidOutcomeSymbol(raw);
|
|
1290
|
+
if (outcome) return outcome.orderSymbol;
|
|
1156
1291
|
if (raw.startsWith("@")) return raw;
|
|
1157
1292
|
if (raw.includes(":")) {
|
|
1158
1293
|
const [dexRaw, ...restParts] = raw.split(":");
|
|
@@ -1274,6 +1409,9 @@ var HyperliquidInfoClient = class {
|
|
|
1274
1409
|
spotAssetCtxs() {
|
|
1275
1410
|
return fetchHyperliquidSpotAssetCtxs(this.environment);
|
|
1276
1411
|
}
|
|
1412
|
+
outcomeMeta() {
|
|
1413
|
+
return fetchHyperliquidOutcomeMeta(this.environment);
|
|
1414
|
+
}
|
|
1277
1415
|
openOrders(user) {
|
|
1278
1416
|
return fetchHyperliquidOpenOrders({ user, environment: this.environment });
|
|
1279
1417
|
}
|
|
@@ -1358,6 +1496,9 @@ async function fetchHyperliquidAssetCtxs(environment = "mainnet") {
|
|
|
1358
1496
|
async function fetchHyperliquidSpotAssetCtxs(environment = "mainnet") {
|
|
1359
1497
|
return postInfo(environment, { type: "spotAssetCtxs" });
|
|
1360
1498
|
}
|
|
1499
|
+
async function fetchHyperliquidOutcomeMeta(environment = "mainnet") {
|
|
1500
|
+
return postInfo(environment, { type: "outcomeMeta" });
|
|
1501
|
+
}
|
|
1361
1502
|
async function fetchHyperliquidOpenOrders(params) {
|
|
1362
1503
|
const env = params.environment ?? "mainnet";
|
|
1363
1504
|
const orders = await postInfo(env, {
|
|
@@ -2598,7 +2739,7 @@ function formatHyperliquidMarketablePrice(params) {
|
|
|
2598
2739
|
if (!formatted) {
|
|
2599
2740
|
throw new RangeError("Marketable price is too small and was truncated to 0.");
|
|
2600
2741
|
}
|
|
2601
|
-
return formatted;
|
|
2742
|
+
return tick ? roundHyperliquidPriceToTick(formatted, tick, side) : formatted;
|
|
2602
2743
|
}
|
|
2603
2744
|
const midString = normalizeDecimalString(mid.toString());
|
|
2604
2745
|
const baseDecimals = countDecimalPlaces(midString);
|
|
@@ -3195,6 +3336,15 @@ async function fetchHyperliquidResolvedMarketDescriptor(params) {
|
|
|
3195
3336
|
if (!parsed) {
|
|
3196
3337
|
throw new Error(`Unable to parse Hyperliquid symbol: ${params.symbol}`);
|
|
3197
3338
|
}
|
|
3339
|
+
if (parsed.kind === "outcome") {
|
|
3340
|
+
const descriptor2 = buildHyperliquidMarketDescriptor({
|
|
3341
|
+
symbol: params.symbol
|
|
3342
|
+
});
|
|
3343
|
+
if (!descriptor2) {
|
|
3344
|
+
throw new Error(`Unable to build Hyperliquid outcome market descriptor: ${params.symbol}`);
|
|
3345
|
+
}
|
|
3346
|
+
return descriptor2;
|
|
3347
|
+
}
|
|
3198
3348
|
if (parsed.kind === "spot" || parsed.kind === "spotIndex") {
|
|
3199
3349
|
const spotInfo = parsed.kind === "spotIndex" ? await fetchHyperliquidSpotMarketInfoByIndex({
|
|
3200
3350
|
environment: params.environment,
|
|
@@ -3253,6 +3403,10 @@ async function fetchHyperliquidResolvedInfoCoin(params) {
|
|
|
3253
3403
|
}
|
|
3254
3404
|
async function fetchHyperliquidSizeDecimals(params) {
|
|
3255
3405
|
const { symbol, environment } = params;
|
|
3406
|
+
const parsed = parseHyperliquidSymbol(symbol);
|
|
3407
|
+
if (parsed?.kind === "outcome") {
|
|
3408
|
+
return 0;
|
|
3409
|
+
}
|
|
3256
3410
|
if (isHyperliquidSpotSymbol(symbol)) {
|
|
3257
3411
|
const meta2 = await fetchHyperliquidSpotMeta(environment);
|
|
3258
3412
|
return resolveSpotSizeDecimals(meta2, symbol);
|
|
@@ -3266,7 +3420,6 @@ async function fetchHyperliquidSizeDecimals(params) {
|
|
|
3266
3420
|
if (match && typeof match.szDecimals === "number") {
|
|
3267
3421
|
return match.szDecimals;
|
|
3268
3422
|
}
|
|
3269
|
-
const parsed = parseHyperliquidSymbol(symbol);
|
|
3270
3423
|
const dex = parsed?.dex ?? null;
|
|
3271
3424
|
if (!dex) {
|
|
3272
3425
|
throw new Error(`No size decimals found for ${symbol}.`);
|
|
@@ -4265,6 +4418,6 @@ var __hyperliquidInternals = {
|
|
|
4265
4418
|
splitSignature
|
|
4266
4419
|
};
|
|
4267
4420
|
|
|
4268
|
-
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, fetchHyperliquidResolvedInfoCoin, 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 };
|
|
4421
|
+
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, buildHyperliquidOutcomeMarketIdentity, 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, fetchHyperliquidOutcomeMeta, fetchHyperliquidPerpMarketInfo, fetchHyperliquidPreTransferCheck, fetchHyperliquidResolvedInfoCoin, 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, parseHyperliquidOutcomeSymbol, 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 };
|
|
4269
4422
|
//# sourceMappingURL=index.js.map
|
|
4270
4423
|
//# sourceMappingURL=index.js.map
|