@pear-protocol/hyperliquid-sdk 0.0.47-alpha → 0.0.48
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/hooks/useMarketData.d.ts +3 -1
- package/dist/index.d.ts +11 -2
- package/dist/index.js +19 -4
- package/dist/types.d.ts +8 -1
- package/package.json +1 -1
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import type { ActiveAssetGroupItem, ActiveAssetsResponse } from '../types';
|
|
1
|
+
import type { ActiveAssetGroupItem, ActiveAssetsResponse, ActiveAssetsAllResponse } from '../types';
|
|
2
2
|
export declare const useMarketDataPayload: () => ActiveAssetsResponse | null;
|
|
3
|
+
export declare const useMarketDataAllPayload: () => ActiveAssetsAllResponse | null;
|
|
3
4
|
export declare const useActiveBaskets: () => ActiveAssetGroupItem[];
|
|
4
5
|
export declare const useTopGainers: (limit?: number) => ActiveAssetGroupItem[];
|
|
5
6
|
export declare const useTopLosers: (limit?: number) => ActiveAssetGroupItem[];
|
|
6
7
|
export declare const useHighlightedBaskets: () => ActiveAssetGroupItem[];
|
|
7
8
|
export declare const useWatchlistBaskets: () => ActiveAssetGroupItem[];
|
|
9
|
+
export declare const useAllBaskets: () => ActiveAssetGroupItem[];
|
|
8
10
|
export declare const useFindBasket: (longs: string[], shorts: string[]) => ActiveAssetGroupItem | undefined;
|
package/dist/index.d.ts
CHANGED
|
@@ -28,7 +28,7 @@ type WebSocketConnectionState = 'connecting' | 'connected' | 'disconnected' | 'e
|
|
|
28
28
|
/**
|
|
29
29
|
* WebSocket channels
|
|
30
30
|
*/
|
|
31
|
-
type WebSocketChannel = 'trade-histories' | 'open-positions' | 'open-orders' | 'account-summary' | 'twap-details' | 'notifications' | 'market-data' | 'webData2' | 'allMids' | 'activeAssetData';
|
|
31
|
+
type WebSocketChannel = 'trade-histories' | 'open-positions' | 'open-orders' | 'account-summary' | 'twap-details' | 'notifications' | 'market-data' | 'market-data-all' | 'webData2' | 'allMids' | 'activeAssetData';
|
|
32
32
|
/**
|
|
33
33
|
* WebSocket subscription message
|
|
34
34
|
*/
|
|
@@ -530,6 +530,7 @@ interface ActiveAssetGroupItem {
|
|
|
530
530
|
shortAssets: PairAssetDto[];
|
|
531
531
|
openInterest: string;
|
|
532
532
|
volume: string;
|
|
533
|
+
netFunding?: string;
|
|
533
534
|
ratio?: string;
|
|
534
535
|
prevRatio?: string;
|
|
535
536
|
change24h?: string;
|
|
@@ -544,6 +545,12 @@ interface ActiveAssetsResponse {
|
|
|
544
545
|
highlighted: ActiveAssetGroupItem[];
|
|
545
546
|
watchlist: ActiveAssetGroupItem[];
|
|
546
547
|
}
|
|
548
|
+
interface ActiveAssetsAllResponse {
|
|
549
|
+
active: ActiveAssetGroupItem[];
|
|
550
|
+
all: ActiveAssetGroupItem[];
|
|
551
|
+
highlighted: ActiveAssetGroupItem[];
|
|
552
|
+
watchlist: ActiveAssetGroupItem[];
|
|
553
|
+
}
|
|
547
554
|
/**
|
|
548
555
|
* Candle interval options
|
|
549
556
|
*/
|
|
@@ -1006,11 +1013,13 @@ interface UseNotificationsResult {
|
|
|
1006
1013
|
declare function useNotifications(): UseNotificationsResult;
|
|
1007
1014
|
|
|
1008
1015
|
declare const useMarketDataPayload: () => ActiveAssetsResponse | null;
|
|
1016
|
+
declare const useMarketDataAllPayload: () => ActiveAssetsAllResponse | null;
|
|
1009
1017
|
declare const useActiveBaskets: () => ActiveAssetGroupItem[];
|
|
1010
1018
|
declare const useTopGainers: (limit?: number) => ActiveAssetGroupItem[];
|
|
1011
1019
|
declare const useTopLosers: (limit?: number) => ActiveAssetGroupItem[];
|
|
1012
1020
|
declare const useHighlightedBaskets: () => ActiveAssetGroupItem[];
|
|
1013
1021
|
declare const useWatchlistBaskets: () => ActiveAssetGroupItem[];
|
|
1022
|
+
declare const useAllBaskets: () => ActiveAssetGroupItem[];
|
|
1014
1023
|
declare const useFindBasket: (longs: string[], shorts: string[]) => ActiveAssetGroupItem | undefined;
|
|
1015
1024
|
|
|
1016
1025
|
declare function useWatchlist(): {
|
|
@@ -1250,5 +1259,5 @@ declare function validatePositionSize(usdValue: number, longAssets?: PairAssetIn
|
|
|
1250
1259
|
|
|
1251
1260
|
declare const useMarketData: any;
|
|
1252
1261
|
|
|
1253
|
-
export { AccountSummaryCalculator, AuthStatus, ConflictDetector, MINIMUM_ASSET_USD_VALUE, MinimumPositionSizeError, PearHyperliquidProvider, TokenMetadataExtractor, adjustOrder, adjustPosition, calculateMinimumPositionValue, calculateWeightedRatio, cancelOrder, cancelTwap, cancelTwapOrder, closeAllPositions, closePosition, computeBasketCandles, createCandleLookups, createPosition, getCompleteTimestamps, getPortfolio, mapCandleIntervalToTradingViewInterval, mapTradingViewIntervalToCandleInterval, markNotificationReadById, markNotificationsRead, toggleWatchlist, updateRiskParameters, useAccountSummary, useActiveBaskets, useAddress, useAgentWallet, useAutoSyncFills, useBasketCandles, useFindBasket, useHighlightedBaskets, useHistoricalPriceData, useHistoricalPriceDataStore, useHyperliquidNativeWebSocket, useHyperliquidWebSocket, useMarketData, useMarketDataPayload, useNotifications, useOpenOrders, useOrders, usePearAgentWallet, usePearAuth, usePearHyperliquid, usePerformanceOverlays, usePortfolio, usePosition, useTokenSelectionMetadata, useTopGainers, useTopLosers, useTradeHistories, useTwap, useUserSelection, useWatchlist, useWatchlistBaskets, useWebData, validateMinimumAssetSize, validatePositionSize };
|
|
1262
|
+
export { AccountSummaryCalculator, AuthStatus, ConflictDetector, MINIMUM_ASSET_USD_VALUE, MinimumPositionSizeError, PearHyperliquidProvider, TokenMetadataExtractor, adjustOrder, adjustPosition, calculateMinimumPositionValue, calculateWeightedRatio, cancelOrder, cancelTwap, cancelTwapOrder, closeAllPositions, closePosition, computeBasketCandles, createCandleLookups, createPosition, getCompleteTimestamps, getPortfolio, mapCandleIntervalToTradingViewInterval, mapTradingViewIntervalToCandleInterval, markNotificationReadById, markNotificationsRead, toggleWatchlist, updateRiskParameters, useAccountSummary, useActiveBaskets, useAddress, useAgentWallet, useAllBaskets, useAutoSyncFills, useBasketCandles, useFindBasket, useHighlightedBaskets, useHistoricalPriceData, useHistoricalPriceDataStore, useHyperliquidNativeWebSocket, useHyperliquidWebSocket, useMarketData, useMarketDataAllPayload, useMarketDataPayload, useNotifications, useOpenOrders, useOrders, usePearAgentWallet, usePearAuth, usePearHyperliquid, usePerformanceOverlays, usePortfolio, usePosition, useTokenSelectionMetadata, useTopGainers, useTopLosers, useTradeHistories, useTwap, useUserSelection, useWatchlist, useWatchlistBaskets, useWebData, validateMinimumAssetSize, validatePositionSize };
|
|
1254
1263
|
export type { AccountSummaryResponseDto, ActiveAssetGroupItem, ActiveAssetsResponse, AdjustExecutionType, AdjustOrderRequestInput, AdjustOrderResponseDto, AdjustPositionRequestInput, AdjustPositionResponseDto, AgentWalletDto, AgentWalletState, ApiErrorResponse, ApiResponse, AssetCtx, AssetInformationDetail, AssetMarketData, AssetPosition, AutoSyncFillsOptions, AutoSyncFillsState, BalanceSummaryDto, CancelOrderResponseDto, CancelTwapResponseDto, CandleChartData, CandleData, CandleInterval, CandleSnapshotRequest, ClearinghouseState, CloseAllPositionsResponseDto, CloseAllPositionsResultDto, CloseExecutionType, ClosePositionRequestInput, ClosePositionResponseDto, CreatePositionRequestInput, CreatePositionResponseDto, CrossMarginSummaryDto, CumFundingDto, ExecutionType, HLWebSocketResponse, HistoricalRange, LadderConfigInput, MarginSummaryDto, NotificationCategory, NotificationDto, OpenLimitOrderDto, OpenPositionDto, OrderAssetDto, OrderStatus, PairAssetDto, PairAssetInput, PerformanceOverlay, PortfolioBucketDto, PortfolioInterval, PortfolioIntervalsDto, PortfolioOverallDto, PortfolioResponseDto, PositionAdjustmentType, PositionAssetDetailDto, PositionAssetSummaryDto, PositionResponseStatus, RealtimeBar, RealtimeBarsCallback, ToggleWatchlistResponseDto, TokenConflict, TokenHistoricalPriceData, TokenMetadata, TokenSelection, TpSlThresholdInput, TpSlThresholdType, TradeHistoryAssetDataDto, TradeHistoryDataDto, TwapChunkStatusDto, TwapMonitoringDto, UniverseAsset, UpdateRiskParametersRequestInput, UpdateRiskParametersResponseDto, UseAgentWalletOptions, UseAuthOptions, UseBasketCandlesReturn, UseHistoricalPriceDataReturn, UseNotificationsResult, UsePerformanceOverlaysReturn, UsePortfolioResult, UseTokenSelectionMetadataReturn, UserProfile, UserSelectionState, WatchlistItemDto, WebData2Response, WebSocketAckResponse, WebSocketChannel, WebSocketConnectionState, WebSocketDataMessage, WebSocketMessage, WebSocketSubscribeMessage, WsAllMidsData };
|
package/dist/index.js
CHANGED
|
@@ -44,13 +44,15 @@ const useUserData = create((set) => ({
|
|
|
44
44
|
|
|
45
45
|
const useMarketData = create((set) => ({
|
|
46
46
|
marketData: null,
|
|
47
|
+
marketDataAll: null,
|
|
47
48
|
setMarketData: (value) => set({ marketData: value }),
|
|
48
|
-
|
|
49
|
+
setMarketDataAll: (value) => set({ marketDataAll: value }),
|
|
50
|
+
clean: () => set({ marketData: null, marketDataAll: null }),
|
|
49
51
|
}));
|
|
50
52
|
|
|
51
53
|
const useHyperliquidWebSocket = ({ wsUrl, address }) => {
|
|
52
54
|
const { setTradeHistories, setRawOpenPositions, setOpenOrders, setAccountSummary, setTwapDetails, setNotifications, clean, } = useUserData();
|
|
53
|
-
const { setMarketData } = useMarketData();
|
|
55
|
+
const { setMarketData, setMarketDataAll } = useMarketData();
|
|
54
56
|
const [lastError, setLastError] = useState(null);
|
|
55
57
|
const [lastSubscribedAddress, setLastSubscribedAddress] = useState(null);
|
|
56
58
|
// Native WebSocket connection with basic reconnection
|
|
@@ -100,6 +102,9 @@ const useHyperliquidWebSocket = ({ wsUrl, address }) => {
|
|
|
100
102
|
case 'market-data':
|
|
101
103
|
setMarketData(dataMessage.data);
|
|
102
104
|
break;
|
|
105
|
+
case 'market-data-all':
|
|
106
|
+
setMarketDataAll(dataMessage.data);
|
|
107
|
+
break;
|
|
103
108
|
// 'fills-checkpoint' is intentionally ignored here
|
|
104
109
|
}
|
|
105
110
|
}
|
|
@@ -170,7 +175,7 @@ const useHyperliquidWebSocket = ({ wsUrl, address }) => {
|
|
|
170
175
|
'fills-checkpoint',
|
|
171
176
|
'notifications'
|
|
172
177
|
];
|
|
173
|
-
const globalChannels = ['market-data'];
|
|
178
|
+
const globalChannels = ['market-data', 'market-data-all'];
|
|
174
179
|
if (address && address !== lastSubscribedAddress) {
|
|
175
180
|
// Unsubscribe from previous address-specific channels if exists
|
|
176
181
|
if (lastSubscribedAddress) {
|
|
@@ -6537,6 +6542,10 @@ function useNotifications() {
|
|
|
6537
6542
|
const useMarketDataPayload = () => {
|
|
6538
6543
|
return useMarketData((s) => s.marketData);
|
|
6539
6544
|
};
|
|
6545
|
+
// Full payload for 'market-data-all' channel
|
|
6546
|
+
const useMarketDataAllPayload = () => {
|
|
6547
|
+
return useMarketData((s) => s.marketDataAll);
|
|
6548
|
+
};
|
|
6540
6549
|
// Active baskets
|
|
6541
6550
|
const useActiveBaskets = () => {
|
|
6542
6551
|
var _a;
|
|
@@ -6573,6 +6582,12 @@ const useWatchlistBaskets = () => {
|
|
|
6573
6582
|
const data = useMarketDataPayload();
|
|
6574
6583
|
return (_a = data === null || data === void 0 ? void 0 : data.watchlist) !== null && _a !== void 0 ? _a : [];
|
|
6575
6584
|
};
|
|
6585
|
+
// All baskets (from market-data-all)
|
|
6586
|
+
const useAllBaskets = () => {
|
|
6587
|
+
var _a;
|
|
6588
|
+
const dataAll = useMarketDataAllPayload();
|
|
6589
|
+
return (_a = dataAll === null || dataAll === void 0 ? void 0 : dataAll.all) !== null && _a !== void 0 ? _a : [];
|
|
6590
|
+
};
|
|
6576
6591
|
// Find a basket by its exact asset composition (order-insensitive)
|
|
6577
6592
|
const useFindBasket = (longs, shorts) => {
|
|
6578
6593
|
const data = useMarketDataPayload();
|
|
@@ -6979,4 +6994,4 @@ function mapCandleIntervalToTradingViewInterval(interval) {
|
|
|
6979
6994
|
}
|
|
6980
6995
|
}
|
|
6981
6996
|
|
|
6982
|
-
export { AccountSummaryCalculator, AuthStatus, ConflictDetector, MINIMUM_ASSET_USD_VALUE, MinimumPositionSizeError, PearHyperliquidProvider, TokenMetadataExtractor, adjustOrder, adjustPosition, calculateMinimumPositionValue, calculateWeightedRatio, cancelOrder, cancelTwap, cancelTwapOrder, closeAllPositions, closePosition, computeBasketCandles, createCandleLookups, createPosition, getCompleteTimestamps, getPortfolio, mapCandleIntervalToTradingViewInterval, mapTradingViewIntervalToCandleInterval, markNotificationReadById, markNotificationsRead, toggleWatchlist, updateRiskParameters, useAccountSummary, useActiveBaskets, useAddress, useAgentWallet, useAutoSyncFills, useBasketCandles, useFindBasket, useHighlightedBaskets, useHistoricalPriceData, useHistoricalPriceDataStore, useHyperliquidNativeWebSocket, useHyperliquidWebSocket, useMarketData, useMarketDataPayload, useNotifications, useOpenOrders, useOrders, usePearAgentWallet, usePearAuth, usePearHyperliquid, usePerformanceOverlays, usePortfolio, usePosition, useTokenSelectionMetadata, useTopGainers, useTopLosers, useTradeHistories, useTwap, useUserSelection, useWatchlist, useWatchlistBaskets, useWebData, validateMinimumAssetSize, validatePositionSize };
|
|
6997
|
+
export { AccountSummaryCalculator, AuthStatus, ConflictDetector, MINIMUM_ASSET_USD_VALUE, MinimumPositionSizeError, PearHyperliquidProvider, TokenMetadataExtractor, adjustOrder, adjustPosition, calculateMinimumPositionValue, calculateWeightedRatio, cancelOrder, cancelTwap, cancelTwapOrder, closeAllPositions, closePosition, computeBasketCandles, createCandleLookups, createPosition, getCompleteTimestamps, getPortfolio, mapCandleIntervalToTradingViewInterval, mapTradingViewIntervalToCandleInterval, markNotificationReadById, markNotificationsRead, toggleWatchlist, updateRiskParameters, useAccountSummary, useActiveBaskets, useAddress, useAgentWallet, useAllBaskets, useAutoSyncFills, useBasketCandles, useFindBasket, useHighlightedBaskets, useHistoricalPriceData, useHistoricalPriceDataStore, useHyperliquidNativeWebSocket, useHyperliquidWebSocket, useMarketData, useMarketDataAllPayload, useMarketDataPayload, useNotifications, useOpenOrders, useOrders, usePearAgentWallet, usePearAuth, usePearHyperliquid, usePerformanceOverlays, usePortfolio, usePosition, useTokenSelectionMetadata, useTopGainers, useTopLosers, useTradeHistories, useTwap, useUserSelection, useWatchlist, useWatchlistBaskets, useWebData, validateMinimumAssetSize, validatePositionSize };
|
package/dist/types.d.ts
CHANGED
|
@@ -57,7 +57,7 @@ export declare enum ReadyState {
|
|
|
57
57
|
/**
|
|
58
58
|
* WebSocket channels
|
|
59
59
|
*/
|
|
60
|
-
export type WebSocketChannel = 'trade-histories' | 'open-positions' | 'open-orders' | 'account-summary' | 'twap-details' | 'notifications' | 'market-data' | 'webData2' | 'allMids' | 'activeAssetData';
|
|
60
|
+
export type WebSocketChannel = 'trade-histories' | 'open-positions' | 'open-orders' | 'account-summary' | 'twap-details' | 'notifications' | 'market-data' | 'market-data-all' | 'webData2' | 'allMids' | 'activeAssetData';
|
|
61
61
|
/**
|
|
62
62
|
* WebSocket subscription message
|
|
63
63
|
*/
|
|
@@ -623,6 +623,7 @@ export interface ActiveAssetGroupItem {
|
|
|
623
623
|
shortAssets: PairAssetDto[];
|
|
624
624
|
openInterest: string;
|
|
625
625
|
volume: string;
|
|
626
|
+
netFunding?: string;
|
|
626
627
|
ratio?: string;
|
|
627
628
|
prevRatio?: string;
|
|
628
629
|
change24h?: string;
|
|
@@ -637,6 +638,12 @@ export interface ActiveAssetsResponse {
|
|
|
637
638
|
highlighted: ActiveAssetGroupItem[];
|
|
638
639
|
watchlist: ActiveAssetGroupItem[];
|
|
639
640
|
}
|
|
641
|
+
export interface ActiveAssetsAllResponse {
|
|
642
|
+
active: ActiveAssetGroupItem[];
|
|
643
|
+
all: ActiveAssetGroupItem[];
|
|
644
|
+
highlighted: ActiveAssetGroupItem[];
|
|
645
|
+
watchlist: ActiveAssetGroupItem[];
|
|
646
|
+
}
|
|
640
647
|
/**
|
|
641
648
|
* Candle interval options
|
|
642
649
|
*/
|