@pear-protocol/symmio-client 0.2.26 → 0.2.27
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/react/index.d.mts +14 -1
- package/dist/react/index.d.ts +14 -1
- package/dist/react/index.js +56 -16
- package/dist/react/index.js.map +1 -1
- package/dist/react/index.mjs +56 -17
- package/dist/react/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/react/index.d.mts
CHANGED
|
@@ -8720,6 +8720,19 @@ interface UseSymmTokenSelectionMarketsReturn {
|
|
|
8720
8720
|
*/
|
|
8721
8721
|
declare function useSymmTokenSelectionMarkets(params?: UseSymmHedgerMarketsParams): UseSymmTokenSelectionMarketsReturn;
|
|
8722
8722
|
|
|
8723
|
+
interface UseSymmTokenMarkPriceReturn {
|
|
8724
|
+
symbol: string | null;
|
|
8725
|
+
binanceSymbol: string | null;
|
|
8726
|
+
markPrice: number | null;
|
|
8727
|
+
isSupported: boolean;
|
|
8728
|
+
reason: "missing_symbol" | "unsupported_symbol" | "invalid_symbol" | null;
|
|
8729
|
+
}
|
|
8730
|
+
/**
|
|
8731
|
+
* Use case: Subscribe to and read live Binance mark price for a single SYMM token symbol.
|
|
8732
|
+
* Uses WebSocket source for continuous updates.
|
|
8733
|
+
*/
|
|
8734
|
+
declare function useSymmTokenMarkPrice(symbol?: string | null): UseSymmTokenMarkPriceReturn;
|
|
8735
|
+
|
|
8723
8736
|
/**
|
|
8724
8737
|
* Use case: Fetch current funding rate snapshots from SYMM core.
|
|
8725
8738
|
*/
|
|
@@ -9102,4 +9115,4 @@ type SymmAuthState = {
|
|
|
9102
9115
|
};
|
|
9103
9116
|
declare const useSymmAuthStore: zustand.UseBoundStore<zustand.StoreApi<SymmAuthState>>;
|
|
9104
9117
|
|
|
9105
|
-
export { type SymmChartSelection, type SymmChartSelectionInput, type SymmChartTokenSelection, type SymmContextValue, type SymmDelegationState, type SymmInstantTradeActionArgs, type SymmInstantTradeRequest, type SymmMutationConfig, type SymmPerformanceOverlay, type SymmQueryConfig, type SymmTokenMetadata, type SymmTokenSelectionMarket, type UseSymmAuthParams, type UseSymmChartCandlesReturn, type UseSymmDelegationParams, type UseSymmHedgerMarketsParams, type UseSymmTokenSelectionMarketsReturn, type UseSymmTokenSelectionMetadataReturn, type UseSymmTpslOrdersParams, getSymmErrorMessage, symmKeys, useBinanceMarkPriceStore, useSymmAccountData, useSymmAccountSummary, useSymmAccountsApi, useSymmAccountsLength, useSymmAccountsQuery, useSymmAccountsWithPositions, useSymmAllocateCollateralMutation, useSymmApprovalQuery, useSymmApproveMutation, useSymmAuth, useSymmAuthStore, useSymmAvailableMargin, useSymmBalances, useSymmCancelClose, useSymmCancelOpenMutation, useSymmCancelTpslMutation, useSymmCancelTwapOrderMutation, useSymmChartCandles, useSymmChartSelection, useSymmClearTriggerConfigMutation, useSymmCloseAllPositionsMutation, useSymmCloseOrder, useSymmClosePositionMutation, useSymmContext, useSymmCoreClient, useSymmCreateAccountMutation, useSymmDeallocateCollateralMutation, useSymmDelegation, useSymmDepositAndAllocateMutation, useSymmDepositMutation, useSymmEditAccountNameMutation, useSymmFunding, useSymmFundingHistory, useSymmFundingPayments, useSymmHedgerMarketById, useSymmHedgerMarketBySymbol, useSymmHedgerMarkets, useSymmInstantTradeEnsureReadyMutation, useSymmInstantTradeExecuteMutation, useSymmInternalTransferCollateralMutation, useSymmLockedParams, useSymmMarkReadNotificationMutation, useSymmMarkets, useSymmNotificationsQuery, useSymmOpenBasketMutation, useSymmOpenOrders, useSymmPendingIds, useSymmPendingInstantOpens, useSymmPerformanceOverlays, useSymmPortfolio, useSymmPositions, useSymmSetTpslMutation, useSymmSetTriggerConfigMutation, useSymmSignTermsMutation, useSymmSignatureQuery, useSymmTokenSelectionMarkets, useSymmTokenSelectionMetadata, useSymmTpslOrders, useSymmTradeHistory, useSymmTriggerConfigQuery, useSymmTriggerOrders, useSymmTwapOrder, useSymmTwapOrdersQuery, useSymmUnreadCountQuery, useSymmUpdatePositionMutation, useSymmWithdraw, useSymmWs, useSymmWsStore };
|
|
9118
|
+
export { type SymmChartSelection, type SymmChartSelectionInput, type SymmChartTokenSelection, type SymmContextValue, type SymmDelegationState, type SymmInstantTradeActionArgs, type SymmInstantTradeRequest, type SymmMutationConfig, type SymmPerformanceOverlay, type SymmQueryConfig, type SymmTokenMetadata, type SymmTokenSelectionMarket, type UseSymmAuthParams, type UseSymmChartCandlesReturn, type UseSymmDelegationParams, type UseSymmHedgerMarketsParams, type UseSymmTokenMarkPriceReturn, type UseSymmTokenSelectionMarketsReturn, type UseSymmTokenSelectionMetadataReturn, type UseSymmTpslOrdersParams, getSymmErrorMessage, symmKeys, useBinanceMarkPriceStore, useSymmAccountData, useSymmAccountSummary, useSymmAccountsApi, useSymmAccountsLength, useSymmAccountsQuery, useSymmAccountsWithPositions, useSymmAllocateCollateralMutation, useSymmApprovalQuery, useSymmApproveMutation, useSymmAuth, useSymmAuthStore, useSymmAvailableMargin, useSymmBalances, useSymmCancelClose, useSymmCancelOpenMutation, useSymmCancelTpslMutation, useSymmCancelTwapOrderMutation, useSymmChartCandles, useSymmChartSelection, useSymmClearTriggerConfigMutation, useSymmCloseAllPositionsMutation, useSymmCloseOrder, useSymmClosePositionMutation, useSymmContext, useSymmCoreClient, useSymmCreateAccountMutation, useSymmDeallocateCollateralMutation, useSymmDelegation, useSymmDepositAndAllocateMutation, useSymmDepositMutation, useSymmEditAccountNameMutation, useSymmFunding, useSymmFundingHistory, useSymmFundingPayments, useSymmHedgerMarketById, useSymmHedgerMarketBySymbol, useSymmHedgerMarkets, useSymmInstantTradeEnsureReadyMutation, useSymmInstantTradeExecuteMutation, useSymmInternalTransferCollateralMutation, useSymmLockedParams, useSymmMarkReadNotificationMutation, useSymmMarkets, useSymmNotificationsQuery, useSymmOpenBasketMutation, useSymmOpenOrders, useSymmPendingIds, useSymmPendingInstantOpens, useSymmPerformanceOverlays, useSymmPortfolio, useSymmPositions, useSymmSetTpslMutation, useSymmSetTriggerConfigMutation, useSymmSignTermsMutation, useSymmSignatureQuery, useSymmTokenMarkPrice, useSymmTokenSelectionMarkets, useSymmTokenSelectionMetadata, useSymmTpslOrders, useSymmTradeHistory, useSymmTriggerConfigQuery, useSymmTriggerOrders, useSymmTwapOrder, useSymmTwapOrdersQuery, useSymmUnreadCountQuery, useSymmUpdatePositionMutation, useSymmWithdraw, useSymmWs, useSymmWsStore };
|
package/dist/react/index.d.ts
CHANGED
|
@@ -8720,6 +8720,19 @@ interface UseSymmTokenSelectionMarketsReturn {
|
|
|
8720
8720
|
*/
|
|
8721
8721
|
declare function useSymmTokenSelectionMarkets(params?: UseSymmHedgerMarketsParams): UseSymmTokenSelectionMarketsReturn;
|
|
8722
8722
|
|
|
8723
|
+
interface UseSymmTokenMarkPriceReturn {
|
|
8724
|
+
symbol: string | null;
|
|
8725
|
+
binanceSymbol: string | null;
|
|
8726
|
+
markPrice: number | null;
|
|
8727
|
+
isSupported: boolean;
|
|
8728
|
+
reason: "missing_symbol" | "unsupported_symbol" | "invalid_symbol" | null;
|
|
8729
|
+
}
|
|
8730
|
+
/**
|
|
8731
|
+
* Use case: Subscribe to and read live Binance mark price for a single SYMM token symbol.
|
|
8732
|
+
* Uses WebSocket source for continuous updates.
|
|
8733
|
+
*/
|
|
8734
|
+
declare function useSymmTokenMarkPrice(symbol?: string | null): UseSymmTokenMarkPriceReturn;
|
|
8735
|
+
|
|
8723
8736
|
/**
|
|
8724
8737
|
* Use case: Fetch current funding rate snapshots from SYMM core.
|
|
8725
8738
|
*/
|
|
@@ -9102,4 +9115,4 @@ type SymmAuthState = {
|
|
|
9102
9115
|
};
|
|
9103
9116
|
declare const useSymmAuthStore: zustand.UseBoundStore<zustand.StoreApi<SymmAuthState>>;
|
|
9104
9117
|
|
|
9105
|
-
export { type SymmChartSelection, type SymmChartSelectionInput, type SymmChartTokenSelection, type SymmContextValue, type SymmDelegationState, type SymmInstantTradeActionArgs, type SymmInstantTradeRequest, type SymmMutationConfig, type SymmPerformanceOverlay, type SymmQueryConfig, type SymmTokenMetadata, type SymmTokenSelectionMarket, type UseSymmAuthParams, type UseSymmChartCandlesReturn, type UseSymmDelegationParams, type UseSymmHedgerMarketsParams, type UseSymmTokenSelectionMarketsReturn, type UseSymmTokenSelectionMetadataReturn, type UseSymmTpslOrdersParams, getSymmErrorMessage, symmKeys, useBinanceMarkPriceStore, useSymmAccountData, useSymmAccountSummary, useSymmAccountsApi, useSymmAccountsLength, useSymmAccountsQuery, useSymmAccountsWithPositions, useSymmAllocateCollateralMutation, useSymmApprovalQuery, useSymmApproveMutation, useSymmAuth, useSymmAuthStore, useSymmAvailableMargin, useSymmBalances, useSymmCancelClose, useSymmCancelOpenMutation, useSymmCancelTpslMutation, useSymmCancelTwapOrderMutation, useSymmChartCandles, useSymmChartSelection, useSymmClearTriggerConfigMutation, useSymmCloseAllPositionsMutation, useSymmCloseOrder, useSymmClosePositionMutation, useSymmContext, useSymmCoreClient, useSymmCreateAccountMutation, useSymmDeallocateCollateralMutation, useSymmDelegation, useSymmDepositAndAllocateMutation, useSymmDepositMutation, useSymmEditAccountNameMutation, useSymmFunding, useSymmFundingHistory, useSymmFundingPayments, useSymmHedgerMarketById, useSymmHedgerMarketBySymbol, useSymmHedgerMarkets, useSymmInstantTradeEnsureReadyMutation, useSymmInstantTradeExecuteMutation, useSymmInternalTransferCollateralMutation, useSymmLockedParams, useSymmMarkReadNotificationMutation, useSymmMarkets, useSymmNotificationsQuery, useSymmOpenBasketMutation, useSymmOpenOrders, useSymmPendingIds, useSymmPendingInstantOpens, useSymmPerformanceOverlays, useSymmPortfolio, useSymmPositions, useSymmSetTpslMutation, useSymmSetTriggerConfigMutation, useSymmSignTermsMutation, useSymmSignatureQuery, useSymmTokenSelectionMarkets, useSymmTokenSelectionMetadata, useSymmTpslOrders, useSymmTradeHistory, useSymmTriggerConfigQuery, useSymmTriggerOrders, useSymmTwapOrder, useSymmTwapOrdersQuery, useSymmUnreadCountQuery, useSymmUpdatePositionMutation, useSymmWithdraw, useSymmWs, useSymmWsStore };
|
|
9118
|
+
export { type SymmChartSelection, type SymmChartSelectionInput, type SymmChartTokenSelection, type SymmContextValue, type SymmDelegationState, type SymmInstantTradeActionArgs, type SymmInstantTradeRequest, type SymmMutationConfig, type SymmPerformanceOverlay, type SymmQueryConfig, type SymmTokenMetadata, type SymmTokenSelectionMarket, type UseSymmAuthParams, type UseSymmChartCandlesReturn, type UseSymmDelegationParams, type UseSymmHedgerMarketsParams, type UseSymmTokenMarkPriceReturn, type UseSymmTokenSelectionMarketsReturn, type UseSymmTokenSelectionMetadataReturn, type UseSymmTpslOrdersParams, getSymmErrorMessage, symmKeys, useBinanceMarkPriceStore, useSymmAccountData, useSymmAccountSummary, useSymmAccountsApi, useSymmAccountsLength, useSymmAccountsQuery, useSymmAccountsWithPositions, useSymmAllocateCollateralMutation, useSymmApprovalQuery, useSymmApproveMutation, useSymmAuth, useSymmAuthStore, useSymmAvailableMargin, useSymmBalances, useSymmCancelClose, useSymmCancelOpenMutation, useSymmCancelTpslMutation, useSymmCancelTwapOrderMutation, useSymmChartCandles, useSymmChartSelection, useSymmClearTriggerConfigMutation, useSymmCloseAllPositionsMutation, useSymmCloseOrder, useSymmClosePositionMutation, useSymmContext, useSymmCoreClient, useSymmCreateAccountMutation, useSymmDeallocateCollateralMutation, useSymmDelegation, useSymmDepositAndAllocateMutation, useSymmDepositMutation, useSymmEditAccountNameMutation, useSymmFunding, useSymmFundingHistory, useSymmFundingPayments, useSymmHedgerMarketById, useSymmHedgerMarketBySymbol, useSymmHedgerMarkets, useSymmInstantTradeEnsureReadyMutation, useSymmInstantTradeExecuteMutation, useSymmInternalTransferCollateralMutation, useSymmLockedParams, useSymmMarkReadNotificationMutation, useSymmMarkets, useSymmNotificationsQuery, useSymmOpenBasketMutation, useSymmOpenOrders, useSymmPendingIds, useSymmPendingInstantOpens, useSymmPerformanceOverlays, useSymmPortfolio, useSymmPositions, useSymmSetTpslMutation, useSymmSetTriggerConfigMutation, useSymmSignTermsMutation, useSymmSignatureQuery, useSymmTokenMarkPrice, useSymmTokenSelectionMarkets, useSymmTokenSelectionMetadata, useSymmTpslOrders, useSymmTradeHistory, useSymmTriggerConfigQuery, useSymmTriggerOrders, useSymmTwapOrder, useSymmTwapOrdersQuery, useSymmUnreadCountQuery, useSymmUpdatePositionMutation, useSymmWithdraw, useSymmWs, useSymmWsStore };
|
package/dist/react/index.js
CHANGED
|
@@ -25040,6 +25040,22 @@ async function fetch24hrTicker(symbol) {
|
|
|
25040
25040
|
priceChangePercent: parseFloat(data.priceChangePercent)
|
|
25041
25041
|
};
|
|
25042
25042
|
}
|
|
25043
|
+
async function fetch24hrTickers() {
|
|
25044
|
+
const response = await fetch(`${BINANCE_FAPI_BASE}/fapi/v1/ticker/24hr`);
|
|
25045
|
+
if (!response.ok) {
|
|
25046
|
+
throw new Error(`Binance 24hr tickers failed: ${response.status}`);
|
|
25047
|
+
}
|
|
25048
|
+
const data = await response.json();
|
|
25049
|
+
const result = {};
|
|
25050
|
+
for (const item of data) {
|
|
25051
|
+
result[item.symbol] = {
|
|
25052
|
+
lastPrice: parseFloat(item.lastPrice),
|
|
25053
|
+
prevClosePrice: parseFloat(item.prevClosePrice),
|
|
25054
|
+
priceChangePercent: parseFloat(item.priceChangePercent)
|
|
25055
|
+
};
|
|
25056
|
+
}
|
|
25057
|
+
return result;
|
|
25058
|
+
}
|
|
25043
25059
|
|
|
25044
25060
|
// src/utils/binance-symbol-map.ts
|
|
25045
25061
|
var SYMBOL_OVERRIDES = {
|
|
@@ -25361,15 +25377,6 @@ var useBinanceMarkPriceStore = zustand.create((set) => ({
|
|
|
25361
25377
|
}));
|
|
25362
25378
|
|
|
25363
25379
|
// src/react/hooks/use-symm-token-selection-markets.ts
|
|
25364
|
-
async function fetchTickerSnapshot(symbol) {
|
|
25365
|
-
const resolution = resolveBinanceSymbol(symbol);
|
|
25366
|
-
if (!resolution.binanceSymbol) return null;
|
|
25367
|
-
const ticker = await fetch24hrTicker(resolution.binanceSymbol);
|
|
25368
|
-
if (!ticker) return null;
|
|
25369
|
-
return {
|
|
25370
|
-
prevClosePrice: ticker.prevClosePrice
|
|
25371
|
-
};
|
|
25372
|
-
}
|
|
25373
25380
|
function useSymmTokenSelectionMarkets(params) {
|
|
25374
25381
|
const query = useSymmHedgerMarkets(params);
|
|
25375
25382
|
const baseMarkets = query.data?.filteredMarkets ?? query.data?.markets ?? [];
|
|
@@ -25401,12 +25408,17 @@ function useSymmTokenSelectionMarkets(params) {
|
|
|
25401
25408
|
const priceQuery = reactQuery.useQuery({
|
|
25402
25409
|
queryKey: ["symm", "token-selection-markets-price", symbolsKey],
|
|
25403
25410
|
queryFn: async () => {
|
|
25411
|
+
const allTickers = await fetch24hrTickers();
|
|
25404
25412
|
const tickerSnapshots = {};
|
|
25405
|
-
|
|
25406
|
-
|
|
25407
|
-
|
|
25408
|
-
|
|
25409
|
-
|
|
25413
|
+
marketSymbols.forEach((symbol) => {
|
|
25414
|
+
const binanceSymbol = resolveBinanceSymbol(symbol).binanceSymbol;
|
|
25415
|
+
if (!binanceSymbol) {
|
|
25416
|
+
tickerSnapshots[symbol] = null;
|
|
25417
|
+
return;
|
|
25418
|
+
}
|
|
25419
|
+
const ticker = allTickers[binanceSymbol];
|
|
25420
|
+
tickerSnapshots[symbol] = ticker ? { prevClosePrice: ticker.prevClosePrice } : null;
|
|
25421
|
+
});
|
|
25410
25422
|
return { tickerSnapshots };
|
|
25411
25423
|
},
|
|
25412
25424
|
enabled: query.isSuccess && marketSymbols.length > 0,
|
|
@@ -25465,6 +25477,33 @@ function useSymmTokenSelectionMarkets(params) {
|
|
|
25465
25477
|
isPriceLoading: priceQuery.isLoading
|
|
25466
25478
|
};
|
|
25467
25479
|
}
|
|
25480
|
+
function useSymmTokenMarkPrice(symbol) {
|
|
25481
|
+
const normalizedSymbol = symbol?.trim().toUpperCase() || null;
|
|
25482
|
+
const resolution = resolveBinanceSymbol(normalizedSymbol ?? "");
|
|
25483
|
+
const liveMarkPrices = useBinanceMarkPriceStore((state) => state.markPrices);
|
|
25484
|
+
const subscribeSymbol = useBinanceMarkPriceStore((state) => state.subscribeSymbol);
|
|
25485
|
+
const unsubscribeSymbol = useBinanceMarkPriceStore((state) => state.unsubscribeSymbol);
|
|
25486
|
+
react.useEffect(() => {
|
|
25487
|
+
if (!normalizedSymbol || !resolution.binanceSymbol || !resolution.supported) {
|
|
25488
|
+
return;
|
|
25489
|
+
}
|
|
25490
|
+
subscribeSymbol(normalizedSymbol, resolution.binanceSymbol);
|
|
25491
|
+
return () => {
|
|
25492
|
+
unsubscribeSymbol(normalizedSymbol, resolution.binanceSymbol);
|
|
25493
|
+
};
|
|
25494
|
+
}, [normalizedSymbol, resolution.binanceSymbol, resolution.supported, subscribeSymbol, unsubscribeSymbol]);
|
|
25495
|
+
const markPrice = react.useMemo(() => {
|
|
25496
|
+
if (!normalizedSymbol) return null;
|
|
25497
|
+
return liveMarkPrices[normalizedSymbol] ?? null;
|
|
25498
|
+
}, [liveMarkPrices, normalizedSymbol]);
|
|
25499
|
+
return {
|
|
25500
|
+
symbol: normalizedSymbol,
|
|
25501
|
+
binanceSymbol: resolution.binanceSymbol,
|
|
25502
|
+
markPrice,
|
|
25503
|
+
isSupported: resolution.supported,
|
|
25504
|
+
reason: resolution.reason
|
|
25505
|
+
};
|
|
25506
|
+
}
|
|
25468
25507
|
function useSymmFunding(params) {
|
|
25469
25508
|
const { symmCoreClient, chainId: ctxChainId } = useSymmContext();
|
|
25470
25509
|
const chainId = params?.chainId ?? ctxChainId;
|
|
@@ -25973,7 +26012,7 @@ function computeNetFundingSum({
|
|
|
25973
26012
|
}
|
|
25974
26013
|
|
|
25975
26014
|
// src/react/hooks/use-symm-token-selection-metadata.ts
|
|
25976
|
-
async function
|
|
26015
|
+
async function fetchTickerSnapshot(symbol) {
|
|
25977
26016
|
const resolution = resolveBinanceSymbol(symbol);
|
|
25978
26017
|
if (!resolution.binanceSymbol) return null;
|
|
25979
26018
|
const ticker = await fetch24hrTicker(resolution.binanceSymbol);
|
|
@@ -26029,7 +26068,7 @@ function useSymmTokenSelectionMetadata(selection, options = {}) {
|
|
|
26029
26068
|
const results = await Promise.all(
|
|
26030
26069
|
allSymbols.map(async ({ symbol }) => ({
|
|
26031
26070
|
symbol,
|
|
26032
|
-
ticker: await
|
|
26071
|
+
ticker: await fetchTickerSnapshot(symbol)
|
|
26033
26072
|
}))
|
|
26034
26073
|
);
|
|
26035
26074
|
const tickerSnapshots = {};
|
|
@@ -26561,6 +26600,7 @@ exports.useSymmSetTpslMutation = useSymmSetTpslMutation;
|
|
|
26561
26600
|
exports.useSymmSetTriggerConfigMutation = useSymmSetTriggerConfigMutation;
|
|
26562
26601
|
exports.useSymmSignTermsMutation = useSymmSignTermsMutation;
|
|
26563
26602
|
exports.useSymmSignatureQuery = useSymmSignatureQuery;
|
|
26603
|
+
exports.useSymmTokenMarkPrice = useSymmTokenMarkPrice;
|
|
26564
26604
|
exports.useSymmTokenSelectionMarkets = useSymmTokenSelectionMarkets;
|
|
26565
26605
|
exports.useSymmTokenSelectionMetadata = useSymmTokenSelectionMetadata;
|
|
26566
26606
|
exports.useSymmTpslOrders = useSymmTpslOrders;
|