@orderly.network/hooks 1.2.0 → 1.3.2
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/esm/configProvider.d.ts +7 -1
- package/esm/configProvider.d.ts.map +1 -1
- package/esm/configProvider.js +44 -18
- package/esm/configProvider.js.map +1 -0
- package/esm/dataProvider.js +24 -19
- package/esm/dataProvider.js.map +1 -0
- package/esm/index.d.ts +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +4 -1
- package/esm/index.js.map +1 -0
- package/esm/middleware/signatureMiddleware.js +9 -8
- package/esm/middleware/signatureMiddleware.js.map +1 -0
- package/esm/orderly/orderbook.service.js +39 -28
- package/esm/orderly/orderbook.service.js.map +1 -0
- package/esm/orderly/orderlyHooks.d.ts +3 -0
- package/esm/orderly/orderlyHooks.d.ts.map +1 -1
- package/esm/orderly/orderlyHooks.js +2 -0
- package/esm/orderly/orderlyHooks.js.map +1 -0
- package/esm/orderly/useAccountInfo.js +3 -1
- package/esm/orderly/useAccountInfo.js.map +1 -0
- package/esm/orderly/useChain.js +16 -9
- package/esm/orderly/useChain.js.map +1 -0
- package/esm/orderly/useChains.d.ts +11 -12
- package/esm/orderly/useChains.d.ts.map +1 -1
- package/esm/orderly/useChains.js +68 -46
- package/esm/orderly/useChains.js.map +1 -0
- package/esm/orderly/useCollateral.d.ts +3 -4
- package/esm/orderly/useCollateral.d.ts.map +1 -1
- package/esm/orderly/useCollateral.js +53 -20
- package/esm/orderly/useCollateral.js.map +1 -0
- package/esm/orderly/useDeposit.js +123 -125
- package/esm/orderly/useDeposit.js.map +1 -0
- package/esm/orderly/useFundingRate.js +14 -13
- package/esm/orderly/useFundingRate.js.map +1 -0
- package/esm/orderly/useFundingRates.js +6 -4
- package/esm/orderly/useFundingRates.js.map +1 -0
- package/esm/orderly/useHoldingStream.js +19 -15
- package/esm/orderly/useHoldingStream.js.map +1 -0
- package/esm/orderly/useIndexPrice.js +7 -5
- package/esm/orderly/useIndexPrice.js.map +1 -0
- package/esm/orderly/useLeverage.js +9 -12
- package/esm/orderly/useLeverage.js.map +1 -0
- package/esm/orderly/useMarginRatio.js +27 -13
- package/esm/orderly/useMarginRatio.js.map +1 -0
- package/esm/orderly/useMarkPrice.js +13 -7
- package/esm/orderly/useMarkPrice.js.map +1 -0
- package/esm/orderly/useMarkPricesStream.d.ts +1 -1
- package/esm/orderly/useMarkPricesStream.d.ts.map +1 -1
- package/esm/orderly/useMarkPricesStream.js +9 -8
- package/esm/orderly/useMarkPricesStream.js.map +1 -0
- package/esm/orderly/useMarketTradeStream.js +33 -18
- package/esm/orderly/useMarketTradeStream.js.map +1 -0
- package/esm/orderly/useMarkets.js +144 -81
- package/esm/orderly/useMarkets.js.map +1 -0
- package/esm/orderly/useMarketsStream.js +23 -28
- package/esm/orderly/useMarketsStream.js.map +1 -0
- package/esm/orderly/useMaxQty.d.ts +6 -0
- package/esm/orderly/useMaxQty.d.ts.map +1 -1
- package/esm/orderly/useMaxQty.js +26 -18
- package/esm/orderly/useMaxQty.js.map +1 -0
- package/esm/orderly/useOpenInterest.js +7 -5
- package/esm/orderly/useOpenInterest.js.map +1 -0
- package/esm/orderly/useOrderEntry.js +182 -160
- package/esm/orderly/useOrderEntry.js.map +1 -0
- package/esm/orderly/useOrderStream.js +85 -66
- package/esm/orderly/useOrderStream.js.map +1 -0
- package/esm/orderly/useOrderbookStream.d.ts +2 -3
- package/esm/orderly/useOrderbookStream.d.ts.map +1 -1
- package/esm/orderly/useOrderbookStream.js +173 -103
- package/esm/orderly/useOrderbookStream.js.map +1 -0
- package/esm/orderly/usePositionStream.js +82 -62
- package/esm/orderly/usePositionStream.js.map +1 -0
- package/esm/orderly/usePrivateDataObserver.js +55 -48
- package/esm/orderly/usePrivateDataObserver.js.map +1 -0
- package/esm/orderly/useSettleSubscription.js +8 -6
- package/esm/orderly/useSettleSubscription.js.map +1 -0
- package/esm/orderly/useSymbolPriceRange.js +14 -8
- package/esm/orderly/useSymbolPriceRange.js.map +1 -0
- package/esm/orderly/useSymbolsInfo.js +7 -5
- package/esm/orderly/useSymbolsInfo.js.map +1 -0
- package/esm/orderly/useTickerStream.d.ts +5 -1
- package/esm/orderly/useTickerStream.d.ts.map +1 -1
- package/esm/orderly/useTickerStream.js +26 -29
- package/esm/orderly/useTickerStream.js.map +1 -0
- package/esm/orderly/useWalletSubscription.js +8 -6
- package/esm/orderly/useWalletSubscription.js.map +1 -0
- package/esm/orderly/useWithdraw.js +19 -11
- package/esm/orderly/useWithdraw.js.map +1 -0
- package/esm/orderlyContext.d.ts +8 -1
- package/esm/orderlyContext.d.ts.map +1 -1
- package/esm/orderlyContext.js +2 -1
- package/esm/orderlyContext.js.map +1 -0
- package/esm/services/dataCenter.js +10 -8
- package/esm/services/dataCenter.js.map +1 -0
- package/esm/services/painter/backgroundPaint.js +11 -14
- package/esm/services/painter/backgroundPaint.js.map +1 -0
- package/esm/services/painter/basePaint.js +5 -1
- package/esm/services/painter/basePaint.js.map +1 -0
- package/esm/services/painter/dataPaint.js +53 -50
- package/esm/services/painter/dataPaint.js.map +1 -0
- package/esm/services/painter/layout.config.js +15 -13
- package/esm/services/painter/layout.config.js.map +1 -0
- package/esm/services/painter/painter.js +14 -13
- package/esm/services/painter/painter.js.map +1 -0
- package/esm/services/painter/resource.js +6 -4
- package/esm/services/painter/resource.js.map +1 -0
- package/esm/statusProvider.js +10 -3
- package/esm/statusProvider.js.map +1 -0
- package/esm/unuse/apiPrefixMiddleware.js +18 -16
- package/esm/unuse/apiPrefixMiddleware.js.map +1 -0
- package/esm/unuse/fn.js +3 -1
- package/esm/unuse/fn.js.map +1 -0
- package/esm/unuse/useBalance.js +6 -4
- package/esm/unuse/useBalance.js.map +1 -0
- package/esm/unuse/useFetures.js +26 -18
- package/esm/unuse/useFetures.js.map +1 -0
- package/esm/unuse/useRunOnce.js +10 -7
- package/esm/unuse/useRunOnce.js.map +1 -0
- package/esm/unuse/useSyncEnd.js +5 -4
- package/esm/unuse/useSyncEnd.js.map +1 -0
- package/esm/unuse/useTokenInfo.js +7 -5
- package/esm/unuse/useTokenInfo.js.map +1 -0
- package/esm/unuse/useUnsettlementPnL.js +7 -3
- package/esm/unuse/useUnsettlementPnL.js.map +1 -0
- package/esm/useAccount.js +18 -21
- package/esm/useAccount.js.map +1 -0
- package/esm/useAccountInstance.js +6 -7
- package/esm/useAccountInstance.js.map +1 -0
- package/esm/useBoolean.js +14 -5
- package/esm/useBoolean.js.map +1 -0
- package/esm/useConfig.js +3 -1
- package/esm/useConfig.js.map +1 -0
- package/esm/useEventEmitter.js +4 -2
- package/esm/useEventEmitter.js.map +1 -0
- package/esm/useLazyQuery.js +6 -7
- package/esm/useLazyQuery.js.map +1 -0
- package/esm/useLocalStorage.js +30 -20
- package/esm/useLocalStorage.js.map +1 -0
- package/esm/useMediaQuery.js +11 -9
- package/esm/useMediaQuery.js.map +1 -0
- package/esm/useMutation.js +26 -37
- package/esm/useMutation.js.map +1 -0
- package/esm/useObserve.js +4 -4
- package/esm/useObserve.js.map +1 -0
- package/esm/useParamsCheck.js +8 -10
- package/esm/useParamsCheck.js.map +1 -0
- package/esm/usePoster.js +56 -45
- package/esm/usePoster.js.map +1 -0
- package/esm/usePreloadData.js +9 -5
- package/esm/usePreloadData.js.map +1 -0
- package/esm/usePrivateInfiniteQuery.js +15 -9
- package/esm/usePrivateInfiniteQuery.js.map +1 -0
- package/esm/usePrivateQuery.js +15 -8
- package/esm/usePrivateQuery.js.map +1 -0
- package/esm/useQuery.js +6 -5
- package/esm/useQuery.js.map +1 -0
- package/esm/useSessionStorage.js +28 -19
- package/esm/useSessionStorage.js.map +1 -0
- package/esm/useWS.js +15 -13
- package/esm/useWS.js.map +1 -0
- package/esm/useWsStatus.js +12 -12
- package/esm/useWsStatus.js.map +1 -0
- package/esm/utils/createGetter.js +8 -8
- package/esm/utils/createGetter.js.map +1 -0
- package/esm/utils/createOrder.d.ts +1 -0
- package/esm/utils/createOrder.d.ts.map +1 -1
- package/esm/utils/createOrder.js +59 -43
- package/esm/utils/createOrder.js.map +1 -0
- package/esm/utils/dev.js +6 -4
- package/esm/utils/dev.js.map +1 -0
- package/esm/utils/fetcher.js +3 -1
- package/esm/utils/fetcher.js.map +1 -0
- package/esm/utils/json.js +3 -2
- package/esm/utils/json.js.map +1 -0
- package/esm/utils/orderEntryHelper.js +92 -63
- package/esm/utils/orderEntryHelper.js.map +1 -0
- package/esm/utils/parseHolding.js +10 -6
- package/esm/utils/parseHolding.js.map +1 -0
- package/esm/utils/swr.js +114 -104
- package/esm/utils/swr.js.map +1 -0
- package/esm/version.d.ts +1 -1
- package/esm/version.js +4 -3
- package/esm/version.js.map +1 -0
- package/esm/walletConnectorContext.js +4 -2
- package/esm/walletConnectorContext.js.map +1 -0
- package/lib/configProvider.d.ts +7 -1
- package/lib/configProvider.d.ts.map +1 -1
- package/lib/configProvider.js +108 -56
- package/lib/configProvider.js.map +1 -0
- package/lib/dataProvider.js +50 -29
- package/lib/dataProvider.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +191 -88
- package/lib/index.js.map +1 -0
- package/lib/middleware/signatureMiddleware.js +22 -15
- package/lib/middleware/signatureMiddleware.js.map +1 -0
- package/lib/orderly/orderbook.service.js +59 -33
- package/lib/orderly/orderbook.service.js.map +1 -0
- package/lib/orderly/orderlyHooks.d.ts +3 -0
- package/lib/orderly/orderlyHooks.d.ts.map +1 -1
- package/lib/orderly/orderlyHooks.js +124 -57
- package/lib/orderly/orderlyHooks.js.map +1 -0
- package/lib/orderly/useAccountInfo.js +14 -6
- package/lib/orderly/useAccountInfo.js.map +1 -0
- package/lib/orderly/useChain.js +30 -17
- package/lib/orderly/useChain.js.map +1 -0
- package/lib/orderly/useChains.d.ts +11 -12
- package/lib/orderly/useChains.d.ts.map +1 -1
- package/lib/orderly/useChains.js +100 -59
- package/lib/orderly/useChains.js.map +1 -0
- package/lib/orderly/useCollateral.d.ts +3 -4
- package/lib/orderly/useCollateral.d.ts.map +1 -1
- package/lib/orderly/useCollateral.js +81 -42
- package/lib/orderly/useCollateral.js.map +1 -0
- package/lib/orderly/useDeposit.js +154 -150
- package/lib/orderly/useDeposit.js.map +1 -0
- package/lib/orderly/useFundingRate.js +29 -22
- package/lib/orderly/useFundingRate.js.map +1 -0
- package/lib/orderly/useFundingRates.js +19 -11
- package/lib/orderly/useFundingRates.js.map +1 -0
- package/lib/orderly/useHoldingStream.js +39 -27
- package/lib/orderly/useHoldingStream.js.map +1 -0
- package/lib/orderly/useIndexPrice.js +24 -14
- package/lib/orderly/useIndexPrice.js.map +1 -0
- package/lib/orderly/useLeverage.js +27 -24
- package/lib/orderly/useLeverage.js.map +1 -0
- package/lib/orderly/useMarginRatio.js +49 -29
- package/lib/orderly/useMarginRatio.js.map +1 -0
- package/lib/orderly/useMarkPrice.js +26 -15
- package/lib/orderly/useMarkPrice.js.map +1 -0
- package/lib/orderly/useMarkPricesStream.d.ts +1 -1
- package/lib/orderly/useMarkPricesStream.d.ts.map +1 -1
- package/lib/orderly/useMarkPricesStream.js +26 -17
- package/lib/orderly/useMarkPricesStream.js.map +1 -0
- package/lib/orderly/useMarketTradeStream.js +47 -26
- package/lib/orderly/useMarketTradeStream.js.map +1 -0
- package/lib/orderly/useMarkets.js +172 -95
- package/lib/orderly/useMarkets.js.map +1 -0
- package/lib/orderly/useMarketsStream.js +44 -41
- package/lib/orderly/useMarketsStream.js.map +1 -0
- package/lib/orderly/useMaxQty.d.ts +6 -0
- package/lib/orderly/useMaxQty.d.ts.map +1 -1
- package/lib/orderly/useMaxQty.js +52 -43
- package/lib/orderly/useMaxQty.js.map +1 -0
- package/lib/orderly/useOpenInterest.js +24 -14
- package/lib/orderly/useOpenInterest.js.map +1 -0
- package/lib/orderly/useOrderEntry.js +238 -210
- package/lib/orderly/useOrderEntry.js.map +1 -0
- package/lib/orderly/useOrderStream.js +111 -84
- package/lib/orderly/useOrderStream.js.map +1 -0
- package/lib/orderly/useOrderbookStream.d.ts +2 -3
- package/lib/orderly/useOrderbookStream.d.ts.map +1 -1
- package/lib/orderly/useOrderbookStream.js +227 -148
- package/lib/orderly/useOrderbookStream.js.map +1 -0
- package/lib/orderly/usePositionStream.js +134 -100
- package/lib/orderly/usePositionStream.js.map +1 -0
- package/lib/orderly/usePrivateDataObserver.js +76 -63
- package/lib/orderly/usePrivateDataObserver.js.map +1 -0
- package/lib/orderly/useSettleSubscription.js +25 -15
- package/lib/orderly/useSettleSubscription.js.map +1 -0
- package/lib/orderly/useSymbolPriceRange.js +29 -23
- package/lib/orderly/useSymbolPriceRange.js.map +1 -0
- package/lib/orderly/useSymbolsInfo.js +23 -15
- package/lib/orderly/useSymbolsInfo.js.map +1 -0
- package/lib/orderly/useTickerStream.d.ts +5 -1
- package/lib/orderly/useTickerStream.d.ts.map +1 -1
- package/lib/orderly/useTickerStream.js +51 -48
- package/lib/orderly/useTickerStream.js.map +1 -0
- package/lib/orderly/useWalletSubscription.js +25 -15
- package/lib/orderly/useWalletSubscription.js.map +1 -0
- package/lib/orderly/useWithdraw.js +36 -22
- package/lib/orderly/useWithdraw.js.map +1 -0
- package/lib/orderlyContext.d.ts +8 -1
- package/lib/orderlyContext.d.ts.map +1 -1
- package/lib/orderlyContext.js +22 -6
- package/lib/orderlyContext.js.map +1 -0
- package/lib/services/dataCenter.js +15 -11
- package/lib/services/dataCenter.js.map +1 -0
- package/lib/services/painter/backgroundPaint.js +21 -18
- package/lib/services/painter/backgroundPaint.js.map +1 -0
- package/lib/services/painter/basePaint.js +14 -4
- package/lib/services/painter/basePaint.js.map +1 -0
- package/lib/services/painter/dataPaint.js +67 -58
- package/lib/services/painter/dataPaint.js.map +1 -0
- package/lib/services/painter/layout.config.js +25 -16
- package/lib/services/painter/layout.config.js.map +1 -0
- package/lib/services/painter/painter.js +27 -20
- package/lib/services/painter/painter.js.map +1 -0
- package/lib/services/painter/resource.js +15 -7
- package/lib/services/painter/resource.js.map +1 -0
- package/lib/statusProvider.js +31 -10
- package/lib/statusProvider.js.map +1 -0
- package/lib/unuse/apiPrefixMiddleware.js +30 -22
- package/lib/unuse/apiPrefixMiddleware.js.map +1 -0
- package/lib/unuse/fn.js +14 -5
- package/lib/unuse/fn.js.map +1 -0
- package/lib/unuse/useBalance.js +23 -13
- package/lib/unuse/useBalance.js.map +1 -0
- package/lib/unuse/useFetures.js +41 -28
- package/lib/unuse/useFetures.js.map +1 -0
- package/lib/unuse/useRunOnce.js +61 -11
- package/lib/unuse/useRunOnce.js.map +1 -0
- package/lib/unuse/useSyncEnd.js +17 -10
- package/lib/unuse/useSyncEnd.js.map +1 -0
- package/lib/unuse/useTokenInfo.js +20 -12
- package/lib/unuse/useTokenInfo.js.map +1 -0
- package/lib/unuse/useUnsettlementPnL.js +21 -11
- package/lib/unuse/useUnsettlementPnL.js.map +1 -0
- package/lib/useAccount.js +32 -29
- package/lib/useAccount.js.map +1 -0
- package/lib/useAccountInstance.js +27 -20
- package/lib/useAccountInstance.js.map +1 -0
- package/lib/useBoolean.js +25 -10
- package/lib/useBoolean.js.map +1 -0
- package/lib/useConfig.js +15 -7
- package/lib/useConfig.js.map +1 -0
- package/lib/useEventEmitter.js +23 -13
- package/lib/useEventEmitter.js.map +1 -0
- package/lib/useLazyQuery.js +25 -23
- package/lib/useLazyQuery.js.map +1 -0
- package/lib/useLocalStorage.js +44 -28
- package/lib/useLocalStorage.js.map +1 -0
- package/lib/useMediaQuery.js +22 -14
- package/lib/useMediaQuery.js.map +1 -0
- package/lib/useMutation.js +47 -52
- package/lib/useMutation.js.map +1 -0
- package/lib/useObserve.js +22 -8
- package/lib/useObserve.js.map +1 -0
- package/lib/useParamsCheck.js +18 -14
- package/lib/useParamsCheck.js.map +1 -0
- package/lib/usePoster.js +80 -74
- package/lib/usePoster.js.map +1 -0
- package/lib/usePreloadData.js +21 -11
- package/lib/usePreloadData.js.map +1 -0
- package/lib/usePrivateInfiniteQuery.js +36 -22
- package/lib/usePrivateInfiniteQuery.js.map +1 -0
- package/lib/usePrivateQuery.js +35 -25
- package/lib/usePrivateQuery.js.map +1 -0
- package/lib/useQuery.js +24 -20
- package/lib/useQuery.js.map +1 -0
- package/lib/useSessionStorage.js +41 -26
- package/lib/useSessionStorage.js.map +1 -0
- package/lib/useWS.js +42 -32
- package/lib/useWS.js.map +1 -0
- package/lib/useWsStatus.js +34 -20
- package/lib/useWsStatus.js.map +1 -0
- package/lib/utils/createGetter.js +19 -14
- package/lib/utils/createGetter.js.map +1 -0
- package/lib/utils/createOrder.d.ts +1 -0
- package/lib/utils/createOrder.d.ts.map +1 -1
- package/lib/utils/createOrder.js +133 -82
- package/lib/utils/createOrder.js.map +1 -0
- package/lib/utils/dev.js +13 -9
- package/lib/utils/dev.js.map +1 -0
- package/lib/utils/fetcher.js +13 -5
- package/lib/utils/fetcher.js.map +1 -0
- package/lib/utils/json.js +12 -5
- package/lib/utils/json.js.map +1 -0
- package/lib/utils/orderEntryHelper.js +125 -82
- package/lib/utils/orderEntryHelper.js.map +1 -0
- package/lib/utils/parseHolding.js +19 -9
- package/lib/utils/parseHolding.js.map +1 -0
- package/lib/utils/swr.js +134 -111
- package/lib/utils/swr.js.map +1 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +13 -4
- package/lib/version.js.map +1 -0
- package/lib/walletConnectorContext.js +23 -7
- package/lib/walletConnectorContext.js.map +1 -0
- package/package.json +17 -9
package/esm/configProvider.d.ts
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import type { PropsWithChildren } from "react";
|
|
2
2
|
import { ConfigStore, OrderlyKeyStore, getWalletAdapterFunc, IContract } from "@orderly.network/core";
|
|
3
|
-
import { NetworkId } from "@orderly.network/types";
|
|
3
|
+
import { Chain, NetworkId } from "@orderly.network/types";
|
|
4
4
|
type RequireAtLeastOne<T, R extends keyof T = keyof T> = Omit<T, R> & {
|
|
5
5
|
[K in R]-?: Required<Pick<T, K>> & Partial<Pick<T, Exclude<R, K>>>;
|
|
6
6
|
}[R];
|
|
7
|
+
type filteredChains = {
|
|
8
|
+
mainnet?: Chain[];
|
|
9
|
+
testnet?: Chain[];
|
|
10
|
+
};
|
|
11
|
+
type filterChainsFunc = (config: ConfigStore) => filteredChains;
|
|
7
12
|
export interface ConfigProviderProps {
|
|
8
13
|
configStore?: ConfigStore;
|
|
9
14
|
keyStore?: OrderlyKeyStore;
|
|
@@ -11,6 +16,7 @@ export interface ConfigProviderProps {
|
|
|
11
16
|
getWalletAdapter?: getWalletAdapterFunc;
|
|
12
17
|
brokerId: string;
|
|
13
18
|
networkId: NetworkId;
|
|
19
|
+
chainFilter?: filteredChains | filterChainsFunc;
|
|
14
20
|
}
|
|
15
21
|
export declare const OrderlyConfigProvider: (props: PropsWithChildren<RequireAtLeastOne<ConfigProviderProps, "brokerId" | "configStore">>) => import("react/jsx-runtime").JSX.Element | null;
|
|
16
22
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configProvider.d.ts","sourceRoot":"","sources":["../src/configProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAM,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAGnD,OAAO,EACL,WAAW,EAGX,eAAe,EACf,oBAAoB,EAMpB,SAAS,EACV,MAAM,uBAAuB,CAAC;AAG/B,OAAO,
|
|
1
|
+
{"version":3,"file":"configProvider.d.ts","sourceRoot":"","sources":["../src/configProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAM,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAGnD,OAAO,EACL,WAAW,EAGX,eAAe,EACf,oBAAoB,EAMpB,SAAS,EACV,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,KAAK,EACL,SAAS,EAGV,MAAM,wBAAwB,CAAC;AAYhC,KAAK,iBAAiB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GACjE;KACG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CACnE,CAAC,CAAC,CAAC,CAAC;AAEP,KAAK,cAAc,GAAG;IACpB,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;CACnB,CAAC;AAEF,KAAK,gBAAgB,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,cAAc,CAAC;AAChE,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IAErB,WAAW,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAAC;CACjD;AAED,eAAO,MAAM,qBAAqB,UACzB,kBACL,kBAAkB,mBAAmB,EAAE,UAAU,GAAG,aAAa,CAAC,CACnE,mDAgGF,CAAC"}
|
package/esm/configProvider.js
CHANGED
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import React, { useEffect } from "react";
|
|
2
|
+
import React, { useEffect, useMemo } from "react";
|
|
3
3
|
import { OrderlyProvider } from "./orderlyContext";
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
DefaultConfigStore, LocalStorageStore, EtherAdapter, SimpleDI, Account, } from "@orderly.network/core";
|
|
4
|
+
import { // MemoryConfigStore,
|
|
5
|
+
DefaultConfigStore, LocalStorageStore, EtherAdapter, SimpleDI, Account } from "@orderly.network/core";
|
|
7
6
|
import useConstant from "use-constant";
|
|
8
7
|
// import { usePreLoadData } from "./usePreloadData";
|
|
9
8
|
import { DataCenterProvider } from "./dataProvider";
|
|
10
9
|
import { StatusProvider } from "./statusProvider";
|
|
11
10
|
import { SDKError } from "@orderly.network/types";
|
|
12
|
-
export const OrderlyConfigProvider = (props)
|
|
11
|
+
export const OrderlyConfigProvider = (props)=>{
|
|
13
12
|
const [account, setAccount] = React.useState(null);
|
|
14
|
-
const { configStore, keyStore, getWalletAdapter, brokerId, networkId, contracts, } = props;
|
|
13
|
+
const { configStore, keyStore, getWalletAdapter, brokerId, networkId, contracts, chainFilter } = props;
|
|
15
14
|
if (!brokerId && typeof configStore === "undefined") {
|
|
16
15
|
console.error("[OrderlyConfigProvider]: brokerId is required");
|
|
17
16
|
}
|
|
@@ -19,36 +18,63 @@ export const OrderlyConfigProvider = (props) => {
|
|
|
19
18
|
// console.error("[OrderlyConfigProvider]: brokerId is required");
|
|
20
19
|
throw new SDKError("if configStore is provided, brokerId is required in configStore");
|
|
21
20
|
}
|
|
22
|
-
const innerConfigStore = useConstant(()
|
|
23
|
-
return configStore || new DefaultConfigStore({
|
|
21
|
+
const innerConfigStore = useConstant(()=>{
|
|
22
|
+
return configStore || new DefaultConfigStore({
|
|
23
|
+
brokerId,
|
|
24
|
+
networkId
|
|
25
|
+
});
|
|
24
26
|
});
|
|
25
|
-
const innerKeyStore = useConstant(()
|
|
27
|
+
const innerKeyStore = useConstant(()=>{
|
|
26
28
|
return keyStore || new LocalStorageStore(networkId);
|
|
27
29
|
});
|
|
28
|
-
const innerGetWalletAdapter = useConstant(()
|
|
29
|
-
return
|
|
30
|
-
((options) => new EtherAdapter(options)));
|
|
30
|
+
const innerGetWalletAdapter = useConstant(()=>{
|
|
31
|
+
return getWalletAdapter || ((options)=>new EtherAdapter(options));
|
|
31
32
|
});
|
|
32
33
|
// check params, if has mismatch, throw warning message to console
|
|
33
34
|
// useParamsCheck({ brokerId: innerConfigStore.get("brokerId") });
|
|
34
|
-
useEffect(()
|
|
35
|
+
useEffect(()=>{
|
|
35
36
|
let account = SimpleDI.get(Account.instanceName);
|
|
36
37
|
if (!account) {
|
|
37
38
|
account = new Account(innerConfigStore, innerKeyStore, innerGetWalletAdapter, {
|
|
38
|
-
contracts
|
|
39
|
+
contracts
|
|
39
40
|
});
|
|
40
41
|
SimpleDI.registerByName(Account.instanceName, account);
|
|
41
42
|
}
|
|
42
43
|
setAccount(account);
|
|
43
44
|
}, []);
|
|
45
|
+
const filteredChains = useMemo(()=>{
|
|
46
|
+
if (typeof chainFilter === "function") {
|
|
47
|
+
return chainFilter(innerConfigStore);
|
|
48
|
+
}
|
|
49
|
+
return chainFilter;
|
|
50
|
+
// const { mainnet, testnet } = props.chains || {};
|
|
51
|
+
// return {
|
|
52
|
+
// mainnet: mainnet || defaultMainnetChains,
|
|
53
|
+
// testnet: testnet || defaultTestnetChains,
|
|
54
|
+
// };
|
|
55
|
+
}, [
|
|
56
|
+
props.chainFilter,
|
|
57
|
+
innerConfigStore
|
|
58
|
+
]);
|
|
44
59
|
if (!account) {
|
|
45
60
|
return null;
|
|
46
61
|
}
|
|
47
|
-
return
|
|
62
|
+
return /*#__PURE__*/ _jsx(OrderlyProvider, {
|
|
63
|
+
value: {
|
|
48
64
|
configStore: innerConfigStore,
|
|
49
65
|
keyStore: innerKeyStore,
|
|
50
66
|
getWalletAdapter: innerGetWalletAdapter,
|
|
51
67
|
networkId: networkId,
|
|
52
|
-
|
|
53
|
-
},
|
|
54
|
-
|
|
68
|
+
filteredChains: filteredChains
|
|
69
|
+
},
|
|
70
|
+
children: /*#__PURE__*/ _jsx(StatusProvider, {
|
|
71
|
+
children: /*#__PURE__*/ _jsx(DataCenterProvider, {
|
|
72
|
+
children: props.children
|
|
73
|
+
})
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
}; // const DataPreload = () => {
|
|
77
|
+
// const { error, done } = usePreLoadData();
|
|
78
|
+
// };
|
|
79
|
+
|
|
80
|
+
//# sourceMappingURL=configProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/configProvider.tsx"],"sourcesContent":["import type { FC, PropsWithChildren } from \"react\";\nimport React, { useEffect, useMemo } from \"react\";\nimport { OrderlyProvider } from \"./orderlyContext\";\nimport {\n ConfigStore,\n // MemoryConfigStore,\n DefaultConfigStore,\n OrderlyKeyStore,\n getWalletAdapterFunc,\n WalletAdapterOptions,\n LocalStorageStore,\n EtherAdapter,\n SimpleDI,\n Account,\n IContract,\n} from \"@orderly.network/core\";\n\nimport useConstant from \"use-constant\";\nimport {\n Chain,\n NetworkId,\n defaultMainnetChains,\n defaultTestnetChains,\n} from \"@orderly.network/types\";\n// import { usePreLoadData } from \"./usePreloadData\";\nimport { DataCenterProvider } from \"./dataProvider\";\nimport { StatusProvider } from \"./statusProvider\";\nimport { SDKError } from \"@orderly.network/types\";\n// import { useParamsCheck } from \"./useParamsCheck\";\n\ntype RequireOnlyOne<T, U extends keyof T = keyof T> = Omit<T, U> &\n {\n [K in U]-?: Required<Pick<T, K>> & Partial<Record<Exclude<U, K>, never>>;\n }[U];\n\ntype RequireAtLeastOne<T, R extends keyof T = keyof T> = Omit<T, R> &\n {\n [K in R]-?: Required<Pick<T, K>> & Partial<Pick<T, Exclude<R, K>>>;\n }[R];\n\ntype filteredChains = {\n mainnet?: Chain[];\n testnet?: Chain[];\n};\n\ntype filterChainsFunc = (config: ConfigStore) => filteredChains;\nexport interface ConfigProviderProps {\n configStore?: ConfigStore;\n keyStore?: OrderlyKeyStore;\n contracts?: IContract;\n getWalletAdapter?: getWalletAdapterFunc;\n brokerId: string;\n networkId: NetworkId;\n\n chainFilter?: filteredChains | filterChainsFunc;\n}\n\nexport const OrderlyConfigProvider = (\n props: PropsWithChildren<\n RequireAtLeastOne<ConfigProviderProps, \"brokerId\" | \"configStore\">\n >\n) => {\n const [account, setAccount] = React.useState<Account | null>(null);\n const {\n configStore,\n keyStore,\n getWalletAdapter,\n brokerId,\n networkId,\n contracts,\n chainFilter,\n } = props;\n\n if (!brokerId && typeof configStore === \"undefined\") {\n console.error(\"[OrderlyConfigProvider]: brokerId is required\");\n }\n\n if (typeof configStore !== \"undefined\" && !configStore.get(\"brokerId\")) {\n // console.error(\"[OrderlyConfigProvider]: brokerId is required\");\n throw new SDKError(\n \"if configStore is provided, brokerId is required in configStore\"\n );\n }\n\n const innerConfigStore = useConstant<ConfigStore>(() => {\n return configStore || new DefaultConfigStore({ brokerId, networkId });\n });\n\n const innerKeyStore = useConstant<OrderlyKeyStore>(() => {\n return keyStore || new LocalStorageStore(networkId);\n });\n\n const innerGetWalletAdapter = useConstant<getWalletAdapterFunc>(() => {\n return (\n getWalletAdapter ||\n ((options: WalletAdapterOptions) => new EtherAdapter(options))\n );\n });\n\n // check params, if has mismatch, throw warning message to console\n // useParamsCheck({ brokerId: innerConfigStore.get(\"brokerId\") });\n\n useEffect(() => {\n let account = SimpleDI.get<Account>(Account.instanceName);\n\n if (!account) {\n account = new Account(\n innerConfigStore,\n innerKeyStore,\n innerGetWalletAdapter,\n {\n contracts,\n }\n );\n\n SimpleDI.registerByName(Account.instanceName, account);\n }\n\n setAccount(account);\n }, []);\n\n const filteredChains = useMemo(() => {\n if (typeof chainFilter === \"function\") {\n return chainFilter(innerConfigStore);\n }\n\n return chainFilter;\n\n // const { mainnet, testnet } = props.chains || {};\n\n // return {\n // mainnet: mainnet || defaultMainnetChains,\n // testnet: testnet || defaultTestnetChains,\n // };\n }, [props.chainFilter, innerConfigStore]);\n\n if (!account) {\n return null;\n }\n\n return (\n <OrderlyProvider\n value={{\n configStore: innerConfigStore,\n keyStore: innerKeyStore,\n getWalletAdapter: innerGetWalletAdapter,\n networkId: networkId,\n filteredChains: filteredChains,\n // apiBaseUrl,\n }}\n >\n <StatusProvider>\n <DataCenterProvider>{props.children}</DataCenterProvider>\n </StatusProvider>\n </OrderlyProvider>\n );\n};\n\n// const DataPreload = () => {\n// const { error, done } = usePreLoadData();\n// };\n"],"names":["React","useEffect","useMemo","OrderlyProvider","DefaultConfigStore","LocalStorageStore","EtherAdapter","SimpleDI","Account","useConstant","DataCenterProvider","StatusProvider","SDKError","OrderlyConfigProvider","props","account","setAccount","useState","configStore","keyStore","getWalletAdapter","brokerId","networkId","contracts","chainFilter","console","error","get","innerConfigStore","innerKeyStore","innerGetWalletAdapter","options","instanceName","registerByName","filteredChains","value","children"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AACA,OAAOA,SAASC,SAAS,EAAEC,OAAO,QAAQ,QAAQ;AAClD,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAGEC,AADA,qBAAqB;AACrBA,kBAAkB,EAIlBC,iBAAiB,EACjBC,YAAY,EACZC,QAAQ,EACRC,OAAO,QAEF,wBAAwB;AAE/B,OAAOC,iBAAiB,eAAe;AAOvC,qDAAqD;AACrD,SAASC,kBAAkB,QAAQ,iBAAiB;AACpD,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,QAAQ,QAAQ,yBAAyB;AA8BlD,OAAO,MAAMC,wBAAwB,CACnCC;IAIA,MAAM,CAACC,SAASC,WAAW,GAAGhB,MAAMiB,QAAQ,CAAiB;IAC7D,MAAM,EACJC,WAAW,EACXC,QAAQ,EACRC,gBAAgB,EAChBC,QAAQ,EACRC,SAAS,EACTC,SAAS,EACTC,WAAW,EACZ,GAAGV;IAEJ,IAAI,CAACO,YAAY,OAAOH,gBAAgB,aAAa;QACnDO,QAAQC,KAAK,CAAC;IAChB;IAEA,IAAI,OAAOR,gBAAgB,eAAe,CAACA,YAAYS,GAAG,CAAC,aAAa;QACtE,kEAAkE;QAClE,MAAM,IAAIf,SACR;IAEJ;IAEA,MAAMgB,mBAAmBnB,YAAyB;QAChD,OAAOS,eAAe,IAAId,mBAAmB;YAAEiB;YAAUC;QAAU;IACrE;IAEA,MAAMO,gBAAgBpB,YAA6B;QACjD,OAAOU,YAAY,IAAId,kBAAkBiB;IAC3C;IAEA,MAAMQ,wBAAwBrB,YAAkC;QAC9D,OACEW,oBACC,CAAA,CAACW,UAAkC,IAAIzB,aAAayB,QAAO;IAEhE;IAEA,kEAAkE;IAClE,kEAAkE;IAElE9B,UAAU;QACR,IAAIc,UAAUR,SAASoB,GAAG,CAAUnB,QAAQwB,YAAY;QAExD,IAAI,CAACjB,SAAS;YACZA,UAAU,IAAIP,QACZoB,kBACAC,eACAC,uBACA;gBACEP;YACF;YAGFhB,SAAS0B,cAAc,CAACzB,QAAQwB,YAAY,EAAEjB;QAChD;QAEAC,WAAWD;IACb,GAAG,EAAE;IAEL,MAAMmB,iBAAiBhC,QAAQ;QAC7B,IAAI,OAAOsB,gBAAgB,YAAY;YACrC,OAAOA,YAAYI;QACrB;QAEA,OAAOJ;IAEP,mDAAmD;IAEnD,WAAW;IACX,8CAA8C;IAC9C,8CAA8C;IAC9C,KAAK;IACP,GAAG;QAACV,MAAMU,WAAW;QAAEI;KAAiB;IAExC,IAAI,CAACb,SAAS;QACZ,OAAO;IACT;IAEA,qBACE,KAACZ;QACCgC,OAAO;YACLjB,aAAaU;YACbT,UAAUU;YACVT,kBAAkBU;YAClBR,WAAWA;YACXY,gBAAgBA;QAElB;kBAEA,cAAA,KAACvB;sBACC,cAAA,KAACD;0BAAoBI,MAAMsB,QAAQ;;;;AAI3C,EAAE,CAEF,8BAA8B;CAC9B,8CAA8C;CAC9C,KAAK"}
|
package/esm/dataProvider.js
CHANGED
|
@@ -2,33 +2,38 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { createContext, useContext, useRef } from "react";
|
|
3
3
|
import { usePrivateDataObserver } from "./orderly/usePrivateDataObserver";
|
|
4
4
|
import { usePreLoadData } from "./usePreloadData";
|
|
5
|
-
export const DataCenterContext = createContext({});
|
|
6
|
-
export const useDataCenterContext = ()
|
|
7
|
-
export const DataCenterProvider = ({ children })
|
|
5
|
+
export const DataCenterContext = /*#__PURE__*/ createContext({});
|
|
6
|
+
export const useDataCenterContext = ()=>useContext(DataCenterContext);
|
|
7
|
+
export const DataCenterProvider = ({ children })=>{
|
|
8
8
|
/**
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const { error, done } = usePreLoadData();
|
|
9
|
+
* preload the required data for the app
|
|
10
|
+
* hidden view while the required data is not ready
|
|
11
|
+
*/ const { error, done } = usePreLoadData();
|
|
13
12
|
const getKeyHandlerMapRef = useRef(new Map());
|
|
14
13
|
usePrivateDataObserver({
|
|
15
|
-
getKeysMap(type) {
|
|
14
|
+
getKeysMap (type) {
|
|
16
15
|
return getKeyHandlerMapRef.current;
|
|
17
|
-
}
|
|
16
|
+
}
|
|
18
17
|
});
|
|
19
18
|
if (error) {
|
|
20
|
-
return _jsx("div", {
|
|
19
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
20
|
+
children: "Data load failed"
|
|
21
|
+
});
|
|
21
22
|
}
|
|
22
|
-
if (!done)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
regesterKeyHandler: (key, fun)
|
|
26
|
-
|
|
23
|
+
if (!done) return null;
|
|
24
|
+
return /*#__PURE__*/ _jsx(DataCenterContext.Provider, {
|
|
25
|
+
value: {
|
|
26
|
+
regesterKeyHandler: (key, fun)=>{
|
|
27
|
+
;
|
|
27
28
|
getKeyHandlerMapRef.current.set(key, fun);
|
|
28
29
|
},
|
|
29
|
-
unregisterKeyHandler: (key)
|
|
30
|
-
|
|
30
|
+
unregisterKeyHandler: (key)=>{
|
|
31
|
+
;
|
|
31
32
|
getKeyHandlerMapRef.current.delete(key);
|
|
32
|
-
}
|
|
33
|
-
},
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
children: children
|
|
36
|
+
});
|
|
34
37
|
};
|
|
38
|
+
|
|
39
|
+
//# sourceMappingURL=dataProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/dataProvider.tsx"],"sourcesContent":["import { PropsWithChildren, createContext, useContext, useRef } from \"react\";\nimport { usePrivateDataObserver } from \"./orderly/usePrivateDataObserver\";\nimport { usePreLoadData } from \"./usePreloadData\";\n\nexport type getKeyFunction = (index: number, prevData: any) => string | null;\n\ninterface DataCenterContextState {\n // orders\n // positions\n // balances\n //\n regesterKeyHandler: (key: string, handler: getKeyFunction) => void;\n unregisterKeyHandler: (key: string) => void;\n}\n\nexport const DataCenterContext = createContext<DataCenterContextState>(\n {} as any\n);\n\nexport const useDataCenterContext = () => useContext(DataCenterContext);\n\nexport const DataCenterProvider = ({ children }: PropsWithChildren) => {\n /**\n * preload the required data for the app\n * hidden view while the required data is not ready\n */\n const { error, done } = usePreLoadData();\n\n const getKeyHandlerMapRef = useRef<Map<string, getKeyFunction>>(new Map());\n\n usePrivateDataObserver({\n getKeysMap(type) {\n return getKeyHandlerMapRef.current;\n },\n });\n\n if (error) {\n return <div>Data load failed</div>;\n }\n\n if (!done) return null;\n\n return (\n <DataCenterContext.Provider\n value={{\n regesterKeyHandler: (key, fun) => {\n console.log(\"regesterKeyHandler\", key);\n getKeyHandlerMapRef.current.set(key, fun);\n },\n unregisterKeyHandler: (key) => {\n console.log(\"unregisterKeyHandler\", key);\n getKeyHandlerMapRef.current.delete(key);\n },\n }}\n >\n {children}\n </DataCenterContext.Provider>\n );\n};\n"],"names":["createContext","useContext","useRef","usePrivateDataObserver","usePreLoadData","DataCenterContext","useDataCenterContext","DataCenterProvider","children","error","done","getKeyHandlerMapRef","Map","getKeysMap","type","current","div","Provider","value","regesterKeyHandler","key","fun","set","unregisterKeyHandler","delete"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAA4BA,aAAa,EAAEC,UAAU,EAAEC,MAAM,QAAQ,QAAQ;AAC7E,SAASC,sBAAsB,QAAQ,mCAAmC;AAC1E,SAASC,cAAc,QAAQ,mBAAmB;AAalD,OAAO,MAAMC,kCAAoBL,cAC/B,CAAC,GACD;AAEF,OAAO,MAAMM,uBAAuB,IAAML,WAAWI,mBAAmB;AAExE,OAAO,MAAME,qBAAqB,CAAC,EAAEC,QAAQ,EAAqB;IAChE;;;GAGC,GACD,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAE,GAAGN;IAExB,MAAMO,sBAAsBT,OAAoC,IAAIU;IAEpET,uBAAuB;QACrBU,YAAWC,IAAI;YACb,OAAOH,oBAAoBI,OAAO;QACpC;IACF;IAEA,IAAIN,OAAO;QACT,qBAAO,KAACO;sBAAI;;IACd;IAEA,IAAI,CAACN,MAAM,OAAO;IAElB,qBACE,KAACL,kBAAkBY,QAAQ;QACzBC,OAAO;YACLC,oBAAoB,CAACC,KAAKC;;gBAExBV,oBAAoBI,OAAO,CAACO,GAAG,CAACF,KAAKC;YACvC;YACAE,sBAAsB,CAACH;;gBAErBT,oBAAoBI,OAAO,CAACS,MAAM,CAACJ;YACrC;QACF;kBAECZ;;AAGP,EAAE"}
|
package/esm/index.d.ts
CHANGED
|
@@ -31,5 +31,6 @@ export { DefaultLayoutConfig } from "./services/painter/layout.config";
|
|
|
31
31
|
export type { PosterLayoutConfig, DrawOptions, } from "./services/painter/basePaint";
|
|
32
32
|
export * from "./orderly/orderlyHooks";
|
|
33
33
|
export { cleanStringStyle } from "./utils/orderEntryHelper";
|
|
34
|
+
export { OrderFactory, checkNotional } from "./utils/createOrder";
|
|
34
35
|
export type { WalletAdapter } from "@orderly.network/core";
|
|
35
36
|
//# sourceMappingURL=index.d.ts.map
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,OAAO,MAAM,EAAE,EAAE,KAAK,gBAAgB,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,CAAC;AAEpD,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,YAAY,EACV,kBAAkB,EAClB,WAAW,GACZ,MAAM,8BAA8B,CAAC;AAEtC,cAAc,wBAAwB,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,OAAO,MAAM,EAAE,EAAE,KAAK,gBAAgB,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,CAAC;AAEpD,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,YAAY,EACV,kBAAkB,EAClB,WAAW,GACZ,MAAM,8BAA8B,CAAC;AAEtC,cAAc,wBAAwB,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAElE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC"}
|
package/esm/index.js
CHANGED
|
@@ -20,7 +20,7 @@ export * from "./orderlyContext";
|
|
|
20
20
|
export * from "./statusProvider";
|
|
21
21
|
export { useWsStatus, WsNetworkStatus } from "./useWsStatus";
|
|
22
22
|
export { OrderlyConfigProvider } from "./configProvider";
|
|
23
|
-
export { WalletConnectorContext, useWalletConnector
|
|
23
|
+
export { WalletConnectorContext, useWalletConnector } from "./walletConnectorContext";
|
|
24
24
|
export * from "./orderly/orderlyHooks";
|
|
25
25
|
import useSWR, { SWRConfig } from "swr";
|
|
26
26
|
export { useSWR, SWRConfig };
|
|
@@ -30,3 +30,6 @@ export { usePoster } from "./usePoster";
|
|
|
30
30
|
export { DefaultLayoutConfig } from "./services/painter/layout.config";
|
|
31
31
|
export * from "./orderly/orderlyHooks";
|
|
32
32
|
export { cleanStringStyle } from "./utils/orderEntryHelper";
|
|
33
|
+
export { OrderFactory, checkNotional } from "./utils/createOrder";
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=index.js.map
|
package/esm/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["// import \"./utils/dev\";\n\nexport { default as version } from \"./version\";\n\nexport { useQuery } from \"./useQuery\";\nexport { useLazyQuery } from \"./useLazyQuery\";\nexport { useMutation } from \"./useMutation\";\nexport { usePrivateQuery } from \"./usePrivateQuery\";\nexport { usePrivateInfiniteQuery } from \"./usePrivateInfiniteQuery\";\nexport { useBoolean } from \"./useBoolean\";\n\nexport { useAccount } from \"./useAccount\";\nexport { useAccountInstance } from \"./useAccountInstance\";\n\nexport { usePreLoadData } from \"./usePreloadData\";\n\nexport { useEventEmitter } from \"./useEventEmitter\";\n\nexport { useSessionStorage } from \"./useSessionStorage\";\nexport { useLocalStorage } from \"./useLocalStorage\";\n\nexport { parseJSON } from \"./utils/json\";\n\nexport { default as useConstant } from \"use-constant\";\nexport { useWS } from \"./useWS\";\nexport { useConfig } from \"./useConfig\";\n\nexport * from \"./orderlyContext\";\nexport * from \"./statusProvider\";\nexport { useWsStatus, WsNetworkStatus } from \"./useWsStatus\";\nexport type { ConfigProviderProps } from \"./configProvider\";\nexport { OrderlyConfigProvider } from \"./configProvider\";\n\nexport {\n WalletConnectorContext,\n useWalletConnector,\n} from \"./walletConnectorContext\";\n\nexport * from \"./orderly/orderlyHooks\";\n\nimport useSWR, { type SWRConfiguration, SWRConfig } from \"swr\";\n\nexport { useSWR, SWRConfig, type SWRConfiguration };\n\nexport * from \"use-debounce\";\n\nexport { useMediaQuery } from \"./useMediaQuery\";\n\nexport { usePoster } from \"./usePoster\";\nexport { DefaultLayoutConfig } from \"./services/painter/layout.config\";\nexport type {\n PosterLayoutConfig,\n DrawOptions,\n} from \"./services/painter/basePaint\";\n\nexport * from \"./orderly/orderlyHooks\";\n\nexport { cleanStringStyle } from \"./utils/orderEntryHelper\";\nexport { OrderFactory, checkNotional } from \"./utils/createOrder\";\n\nexport type { WalletAdapter } from \"@orderly.network/core\";\n"],"names":["default","version","useQuery","useLazyQuery","useMutation","usePrivateQuery","usePrivateInfiniteQuery","useBoolean","useAccount","useAccountInstance","usePreLoadData","useEventEmitter","useSessionStorage","useLocalStorage","parseJSON","useConstant","useWS","useConfig","useWsStatus","WsNetworkStatus","OrderlyConfigProvider","WalletConnectorContext","useWalletConnector","useSWR","SWRConfig","useMediaQuery","usePoster","DefaultLayoutConfig","cleanStringStyle","OrderFactory","checkNotional"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,wBAAwB;AAExB,SAASA,WAAWC,OAAO,QAAQ,YAAY;AAE/C,SAASC,QAAQ,QAAQ,aAAa;AACtC,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,uBAAuB,QAAQ,4BAA4B;AACpE,SAASC,UAAU,QAAQ,eAAe;AAE1C,SAASC,UAAU,QAAQ,eAAe;AAC1C,SAASC,kBAAkB,QAAQ,uBAAuB;AAE1D,SAASC,cAAc,QAAQ,mBAAmB;AAElD,SAASC,eAAe,QAAQ,oBAAoB;AAEpD,SAASC,iBAAiB,QAAQ,sBAAsB;AACxD,SAASC,eAAe,QAAQ,oBAAoB;AAEpD,SAASC,SAAS,QAAQ,eAAe;AAEzC,SAASd,WAAWe,WAAW,QAAQ,eAAe;AACtD,SAASC,KAAK,QAAQ,UAAU;AAChC,SAASC,SAAS,QAAQ,cAAc;AAExC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC,SAASC,WAAW,EAAEC,eAAe,QAAQ,gBAAgB;AAE7D,SAASC,qBAAqB,QAAQ,mBAAmB;AAEzD,SACEC,sBAAsB,EACtBC,kBAAkB,QACb,2BAA2B;AAElC,cAAc,yBAAyB;AAEvC,OAAOC,UAAiCC,SAAS,QAAQ,MAAM;AAE/D,SAASD,MAAM,EAAEC,SAAS,GAA0B;AAEpD,cAAc,eAAe;AAE7B,SAASC,aAAa,QAAQ,kBAAkB;AAEhD,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,mBAAmB,QAAQ,mCAAmC;AAMvE,cAAc,yBAAyB;AAEvC,SAASC,gBAAgB,QAAQ,2BAA2B;AAC5D,SAASC,YAAY,EAAEC,aAAa,QAAQ,sBAAsB"}
|
|
@@ -1,32 +1,33 @@
|
|
|
1
1
|
import { SimpleDI } from "@orderly.network/core";
|
|
2
2
|
import { useConfig } from "../useConfig";
|
|
3
|
-
export const signatureMiddleware = (useSWRNext)
|
|
3
|
+
export const signatureMiddleware = (useSWRNext)=>{
|
|
4
4
|
const apiBaseUrl = useConfig("apiBaseUrl");
|
|
5
|
-
return (key, fetcher, config)
|
|
5
|
+
return (key, fetcher, config)=>{
|
|
6
6
|
try {
|
|
7
|
-
const extendedFetcher = async (args)
|
|
7
|
+
const extendedFetcher = async (args)=>{
|
|
8
8
|
let url = Array.isArray(args) ? args[0] : args;
|
|
9
9
|
let account = SimpleDI.get("account");
|
|
10
10
|
let fullUrl = `${apiBaseUrl}${url}`;
|
|
11
11
|
const signer = account.signer;
|
|
12
12
|
const payload = {
|
|
13
13
|
method: "GET",
|
|
14
|
-
url
|
|
14
|
+
url
|
|
15
15
|
};
|
|
16
16
|
const signature = await signer.sign(payload);
|
|
17
17
|
// @ts-ignore
|
|
18
18
|
return fetcher(fullUrl, {
|
|
19
19
|
headers: {
|
|
20
20
|
...signature,
|
|
21
|
-
"orderly-account-id": account.accountId
|
|
22
|
-
}
|
|
21
|
+
"orderly-account-id": account.accountId
|
|
22
|
+
}
|
|
23
23
|
});
|
|
24
24
|
};
|
|
25
25
|
return useSWRNext(key, extendedFetcher, config);
|
|
26
|
-
}
|
|
27
|
-
catch (e) {
|
|
26
|
+
} catch (e) {
|
|
28
27
|
console.error("signature error:", e);
|
|
29
28
|
throw e;
|
|
30
29
|
}
|
|
31
30
|
};
|
|
32
31
|
};
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=signatureMiddleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/middleware/signatureMiddleware.ts"],"sourcesContent":["import { SWRHook, Middleware } from \"swr\";\nimport { SimpleDI, Account, MessageFactor } from \"@orderly.network/core\";\nimport { useConfig } from \"../useConfig\";\n\nexport const signatureMiddleware: Middleware = (useSWRNext: SWRHook) => {\n const apiBaseUrl = useConfig<string>(\"apiBaseUrl\");\n return (key, fetcher, config) => {\n try {\n const extendedFetcher = async (args: any) => {\n let url = Array.isArray(args) ? args[0] : args;\n\n let account = SimpleDI.get<Account>(\"account\");\n let fullUrl = `${apiBaseUrl}${url}`;\n\n const signer = account.signer;\n\n const payload: MessageFactor = {\n method: \"GET\",\n url,\n };\n\n const signature = await signer.sign(payload);\n\n // @ts-ignore\n return fetcher(fullUrl, {\n headers: {\n ...signature,\n \"orderly-account-id\": account.accountId,\n },\n });\n };\n return useSWRNext(key, extendedFetcher, config);\n } catch (e) {\n console.error(\"signature error:\", e);\n throw e;\n }\n };\n};\n"],"names":["SimpleDI","useConfig","signatureMiddleware","useSWRNext","apiBaseUrl","key","fetcher","config","extendedFetcher","args","url","Array","isArray","account","get","fullUrl","signer","payload","method","signature","sign","headers","accountId","e","console","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AACA,SAASA,QAAQ,QAAgC,wBAAwB;AACzE,SAASC,SAAS,QAAQ,eAAe;AAEzC,OAAO,MAAMC,sBAAkC,CAACC;IAC9C,MAAMC,aAAaH,UAAkB;IACrC,OAAO,CAACI,KAAKC,SAASC;QACpB,IAAI;YACF,MAAMC,kBAAkB,OAAOC;gBAC7B,IAAIC,MAAMC,MAAMC,OAAO,CAACH,QAAQA,IAAI,CAAC,EAAE,GAAGA;gBAE1C,IAAII,UAAUb,SAASc,GAAG,CAAU;gBACpC,IAAIC,UAAU,CAAC,EAAEX,WAAW,EAAEM,IAAI,CAAC;gBAEnC,MAAMM,SAASH,QAAQG,MAAM;gBAE7B,MAAMC,UAAyB;oBAC7BC,QAAQ;oBACRR;gBACF;gBAEA,MAAMS,YAAY,MAAMH,OAAOI,IAAI,CAACH;gBAEpC,aAAa;gBACb,OAAOX,QAAQS,SAAS;oBACtBM,SAAS;wBACP,GAAGF,SAAS;wBACZ,sBAAsBN,QAAQS,SAAS;oBACzC;gBACF;YACF;YACA,OAAOnB,WAAWE,KAAKG,iBAAiBD;QAC1C,EAAE,OAAOgB,GAAG;YACVC,QAAQC,KAAK,CAAC,oBAAoBF;YAClC,MAAMA;QACR;IACF;AACF,EAAE"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
export const defaultRawOrderBook = {
|
|
2
2
|
asks: [],
|
|
3
3
|
bids: [],
|
|
4
|
-
ts: 0
|
|
4
|
+
ts: 0
|
|
5
5
|
};
|
|
6
6
|
class OrderbookService {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
7
|
+
static instance;
|
|
8
|
+
bufferedOrderBookUpdates = {};
|
|
9
|
+
rawOrderBook = {};
|
|
10
|
+
constructor(){}
|
|
11
11
|
static getInstance() {
|
|
12
12
|
if (!this.instance) {
|
|
13
13
|
this.instance = new OrderbookService();
|
|
@@ -15,7 +15,7 @@ class OrderbookService {
|
|
|
15
15
|
return this.instance;
|
|
16
16
|
}
|
|
17
17
|
sortBufferedOrderBookUpdates(symbol) {
|
|
18
|
-
this.bufferedOrderBookUpdates[symbol]?.sort((a, b)
|
|
18
|
+
this.bufferedOrderBookUpdates[symbol]?.sort((a, b)=>a.ts - b.ts);
|
|
19
19
|
}
|
|
20
20
|
applyUpdateToRawOrderBook(symbol, update) {
|
|
21
21
|
const rawOrderBook = this.rawOrderBook[symbol];
|
|
@@ -24,16 +24,16 @@ class OrderbookService {
|
|
|
24
24
|
}
|
|
25
25
|
const askMap = new Map();
|
|
26
26
|
const bidMap = new Map();
|
|
27
|
-
rawOrderBook.asks.forEach((ask)
|
|
28
|
-
rawOrderBook.bids.forEach((bid)
|
|
29
|
-
update.asks.forEach((ask)
|
|
30
|
-
update.bids.forEach((bid)
|
|
31
|
-
rawOrderBook.asks = Array.from(askMap.entries()).sort((a, b)
|
|
32
|
-
rawOrderBook.bids = Array.from(bidMap.entries()).sort((a, b)
|
|
27
|
+
rawOrderBook.asks.forEach((ask)=>askMap.set(ask[0], ask[1]));
|
|
28
|
+
rawOrderBook.bids.forEach((bid)=>bidMap.set(bid[0], bid[1]));
|
|
29
|
+
update.asks.forEach((ask)=>ask[1] === 0 ? askMap.delete(ask[0]) : askMap.set(ask[0], ask[1]));
|
|
30
|
+
update.bids.forEach((bid)=>bid[1] === 0 ? bidMap.delete(bid[0]) : bidMap.set(bid[0], bid[1]));
|
|
31
|
+
rawOrderBook.asks = Array.from(askMap.entries()).sort((a, b)=>a[0] - b[0]);
|
|
32
|
+
rawOrderBook.bids = Array.from(bidMap.entries()).sort((a, b)=>b[0] - a[0]);
|
|
33
33
|
rawOrderBook.ts = update.ts;
|
|
34
34
|
}
|
|
35
35
|
applyBufferedUpdatesToRawOrderBooks(symbol) {
|
|
36
|
-
this.bufferedOrderBookUpdates[symbol]?.forEach((update)
|
|
36
|
+
this.bufferedOrderBookUpdates[symbol]?.forEach((update)=>this.applyUpdateToRawOrderBook(symbol, update));
|
|
37
37
|
}
|
|
38
38
|
deleteBufferedOrderBookUpdates(symbol) {
|
|
39
39
|
delete this.bufferedOrderBookUpdates[symbol];
|
|
@@ -43,18 +43,18 @@ class OrderbookService {
|
|
|
43
43
|
if (!rawOrderBook) {
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
46
|
+
// const orderbook = this.prepareOrderBookStore(rawOrderBook);
|
|
47
|
+
// if (orderbook.firstAskPrice <= orderbook.firstBidPrice) {
|
|
48
|
+
// console.error(SERVICE_PREFIX, 'Orderbook crossing error', { crossedAsks: orderbook.asks, crossedBids: orderbook.bids });
|
|
49
|
+
//
|
|
50
|
+
// this.rawOrderBook[symbol] = {
|
|
51
|
+
// ...defaultRawOrderBook,
|
|
52
|
+
// ts: -1, // must be -1 because it needs to cause Orderbook version error in public websocket
|
|
53
|
+
// };
|
|
54
|
+
// } else {
|
|
55
|
+
// orderBookStore.update(symbol, orderbook);
|
|
56
|
+
// depthChartService.commitDepthChart(symbol);
|
|
57
|
+
// }
|
|
58
58
|
}
|
|
59
59
|
pushUpdateToBuffer(symbol, update) {
|
|
60
60
|
if (this.bufferedOrderBookUpdates[symbol] === undefined) {
|
|
@@ -85,7 +85,6 @@ class OrderbookService {
|
|
|
85
85
|
this.applyBufferedUpdatesToRawOrderBooks(symbol);
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
-
;
|
|
89
88
|
updateOrderbook(symbol, update, callback) {
|
|
90
89
|
const { asks, bids, prevTs, ts } = update;
|
|
91
90
|
const rawOrderBook = this.rawOrderBook[symbol];
|
|
@@ -94,11 +93,21 @@ class OrderbookService {
|
|
|
94
93
|
}
|
|
95
94
|
const currentTs = rawOrderBook.ts;
|
|
96
95
|
if (currentTs === 0) {
|
|
97
|
-
this.pushUpdateToBuffer(symbol, {
|
|
96
|
+
this.pushUpdateToBuffer(symbol, {
|
|
97
|
+
asks,
|
|
98
|
+
bids,
|
|
99
|
+
prevTs,
|
|
100
|
+
ts
|
|
101
|
+
});
|
|
98
102
|
return;
|
|
99
103
|
}
|
|
100
104
|
if (prevTs !== currentTs) {
|
|
101
|
-
this.pushUpdateToBuffer(symbol, {
|
|
105
|
+
this.pushUpdateToBuffer(symbol, {
|
|
106
|
+
asks,
|
|
107
|
+
bids,
|
|
108
|
+
prevTs,
|
|
109
|
+
ts
|
|
110
|
+
});
|
|
102
111
|
if (callback) {
|
|
103
112
|
callback();
|
|
104
113
|
}
|
|
@@ -116,3 +125,5 @@ class OrderbookService {
|
|
|
116
125
|
}
|
|
117
126
|
const orderBookService = OrderbookService.getInstance();
|
|
118
127
|
export default orderBookService;
|
|
128
|
+
|
|
129
|
+
//# sourceMappingURL=orderbook.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/orderly/orderbook.service.ts"],"sourcesContent":["export interface RawOrderBook {\n asks: [number, number][];\n bids: [number, number][];\n ts: number;\n}\n\nexport interface RawOrderBookUpdate {\n asks: [number, number][];\n bids: [number, number][];\n prevTs: number;\n ts: number;\n}\n\nexport const defaultRawOrderBook: RawOrderBook = {\n asks: [],\n bids: [],\n ts: 0,\n};\n\nclass OrderbookService{\n private static instance: OrderbookService;\n private bufferedOrderBookUpdates: { [symbol: string]: RawOrderBookUpdate[] } = {};\n private rawOrderBook: { [symbol: string]: RawOrderBook } = {};\n\n constructor() {\n }\n\n static getInstance() {\n if (!this.instance) {\n this.instance = new OrderbookService();\n }\n return this.instance;\n }\n\n private sortBufferedOrderBookUpdates(symbol: string){\n this.bufferedOrderBookUpdates[symbol]?.sort((a, b) => a.ts - b.ts);\n }\n\n private applyUpdateToRawOrderBook(symbol: string, update: RawOrderBookUpdate) {\n const rawOrderBook = this.rawOrderBook[symbol];\n\n if (!rawOrderBook || rawOrderBook.ts > update.prevTs) {\n return;\n }\n\n const askMap = new Map<number, number>();\n const bidMap = new Map<number, number>();\n\n rawOrderBook.asks.forEach((ask) => askMap.set(ask[0], ask[1]));\n rawOrderBook.bids.forEach((bid) => bidMap.set(bid[0], bid[1]));\n\n update.asks.forEach((ask) => (ask[1] === 0 ? askMap.delete(ask[0]) : askMap.set(ask[0], ask[1])));\n update.bids.forEach((bid) => (bid[1] === 0 ? bidMap.delete(bid[0]) : bidMap.set(bid[0], bid[1])));\n\n rawOrderBook.asks = Array.from(askMap.entries()).sort((a, b) => a[0] - b[0]);\n rawOrderBook.bids = Array.from(bidMap.entries()).sort((a, b) => b[0] - a[0]);\n\n rawOrderBook.ts = update.ts;\n }\n private applyBufferedUpdatesToRawOrderBooks(symbol: string) {\n this.bufferedOrderBookUpdates[symbol]?.forEach((update) => this.applyUpdateToRawOrderBook(symbol, update));\n }\n\n private deleteBufferedOrderBookUpdates(symbol: string) {\n delete this.bufferedOrderBookUpdates[symbol];\n }\n\n private commitOrderBook(symbol: string) {\n const rawOrderBook = this.rawOrderBook[symbol];\n if (!rawOrderBook) {\n return;\n }\n\n // const orderbook = this.prepareOrderBookStore(rawOrderBook);\n // if (orderbook.firstAskPrice <= orderbook.firstBidPrice) {\n // console.error(SERVICE_PREFIX, 'Orderbook crossing error', { crossedAsks: orderbook.asks, crossedBids: orderbook.bids });\n //\n // this.rawOrderBook[symbol] = {\n // ...defaultRawOrderBook,\n // ts: -1, // must be -1 because it needs to cause Orderbook version error in public websocket\n // };\n // } else {\n // orderBookStore.update(symbol, orderbook);\n // depthChartService.commitDepthChart(symbol);\n // }\n }\n\n\n\n private pushUpdateToBuffer(symbol: string, update: RawOrderBookUpdate) {\n if (this.bufferedOrderBookUpdates[symbol] === undefined) {\n this.bufferedOrderBookUpdates[symbol] = [];\n }\n\n const buffer = this.bufferedOrderBookUpdates[symbol];\n if (buffer.length > 0) {\n const lastUpdate = buffer[buffer.length - 1];\n\n if (lastUpdate.ts !== update.prevTs) {\n this.bufferedOrderBookUpdates[symbol] = [];\n }\n }\n\n this.bufferedOrderBookUpdates[symbol].push(update);\n }\n private isValidFullOrderBook(symbol: string, currentTs: number) {\n if ((this.bufferedOrderBookUpdates[symbol]?.length ?? 0) !== 0) {\n const earliestUpdates = this.bufferedOrderBookUpdates[symbol][0];\n\n // Incoming full orderbook is invalid if the timestamp is less than all of our buffered diff orderbook updates.\n return earliestUpdates.prevTs <= currentTs;\n }\n return true;\n }\n\n setFullOrderbook(symbol: string, rawOrderbook: RawOrderBook){\n const {ts} = rawOrderbook;\n this.rawOrderBook[symbol] = rawOrderbook;\n this.sortBufferedOrderBookUpdates(symbol);\n if (this.isValidFullOrderBook(symbol, ts)) {\n this.applyBufferedUpdatesToRawOrderBooks(symbol);\n }\n\n\n\n };\n\n updateOrderbook(symbol: string, update: RawOrderBookUpdate, callback: () => void) {\n const {asks, bids, prevTs, ts} = update;\n const rawOrderBook = this.rawOrderBook[symbol];\n if (!rawOrderBook) {\n return;\n }\n const currentTs = rawOrderBook.ts;\n if (currentTs === 0) {\n this.pushUpdateToBuffer(symbol, { asks, bids, prevTs, ts });\n return;\n }\n if (prevTs !== currentTs) {\n\n this.pushUpdateToBuffer(symbol, {asks, bids, prevTs, ts})\n if (callback) {\n callback();\n }\n return;\n }\n\n this.applyUpdateToRawOrderBook(symbol, update);\n this.deleteBufferedOrderBookUpdates(symbol);\n }\n\n getRawOrderbook(symbol: string) {\n return this.rawOrderBook[symbol];\n }\n\n public resetOrderBook(symbol: string) {\n this.rawOrderBook[symbol] = defaultRawOrderBook;\n }\n\n\n\n\n}\n\nconst orderBookService = OrderbookService.getInstance();\n\nexport default orderBookService;"],"names":["defaultRawOrderBook","asks","bids","ts","OrderbookService","instance","bufferedOrderBookUpdates","rawOrderBook","constructor","getInstance","sortBufferedOrderBookUpdates","symbol","sort","a","b","applyUpdateToRawOrderBook","update","prevTs","askMap","Map","bidMap","forEach","ask","set","bid","delete","Array","from","entries","applyBufferedUpdatesToRawOrderBooks","deleteBufferedOrderBookUpdates","commitOrderBook","pushUpdateToBuffer","undefined","buffer","length","lastUpdate","push","isValidFullOrderBook","currentTs","earliestUpdates","setFullOrderbook","rawOrderbook","updateOrderbook","callback","getRawOrderbook","resetOrderBook","orderBookService"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { useOrderbookStream } from "./useOrderbookStream";
|
|
2
|
+
export type { OrderbookData, OrderBookItem, OrderbookOptions, } from "./useOrderbookStream";
|
|
2
3
|
export { useOrderEntry } from "./useOrderEntry";
|
|
3
4
|
export type { UseOrderEntryMetaState, OrderParams } from "./useOrderEntry";
|
|
4
5
|
export { useSymbolsInfo } from "./useSymbolsInfo";
|
|
@@ -16,9 +17,11 @@ export { usePositionStream } from "./usePositionStream";
|
|
|
16
17
|
export { useOrderStream } from "./useOrderStream";
|
|
17
18
|
export { useMarketTradeStream } from "./useMarketTradeStream";
|
|
18
19
|
export { useCollateral } from "./useCollateral";
|
|
20
|
+
export type { CollateralOutputs } from "./useCollateral";
|
|
19
21
|
export { useMaxQty } from "./useMaxQty";
|
|
20
22
|
export { useMarginRatio } from "./useMarginRatio";
|
|
21
23
|
export { useChains } from "./useChains";
|
|
24
|
+
export type { UseChainsOptions, Chain, Chains, UseChainsReturnObject, } from "./useChains";
|
|
22
25
|
export { useChain } from "./useChain";
|
|
23
26
|
export { useWithdraw } from "./useWithdraw";
|
|
24
27
|
export { useDeposit } from "./useDeposit";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orderlyHooks.d.ts","sourceRoot":"","sources":["../../src/orderly/orderlyHooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"orderlyHooks.d.ts","sourceRoot":"","sources":["../../src/orderly/orderlyHooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACV,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -25,3 +25,5 @@ export { useWalletSubscription } from "./useWalletSubscription";
|
|
|
25
25
|
export { useSettleSubscription } from "./useSettleSubscription";
|
|
26
26
|
export { usePrivateDataObserver } from "./usePrivateDataObserver";
|
|
27
27
|
export { useSymbolPriceRange } from "./useSymbolPriceRange";
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=orderlyHooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/orderly/orderlyHooks.ts"],"sourcesContent":["export { useOrderbookStream } from \"./useOrderbookStream\";\nexport type {\n OrderbookData,\n OrderBookItem,\n OrderbookOptions,\n} from \"./useOrderbookStream\";\nexport { useOrderEntry } from \"./useOrderEntry\";\nexport type { UseOrderEntryMetaState, OrderParams } from \"./useOrderEntry\";\nexport { useSymbolsInfo } from \"./useSymbolsInfo\";\nexport { useAccountInfo } from \"./useAccountInfo\";\n\nexport { useMarketsStream } from \"./useMarketsStream\";\nexport { useMarkets, MarketsType } from \"./useMarkets\";\nexport type { FavoriteTab, Favorite, Recent } from \"./useMarkets\";\nexport { useMarkPricesStream } from \"./useMarkPricesStream\";\nexport { useMarkPrice } from \"./useMarkPrice\";\nexport { useIndexPrice } from \"./useIndexPrice\";\nexport { useLeverage } from \"./useLeverage\";\n\nexport { useTickerStream } from \"./useTickerStream\";\nexport { useFundingRate } from \"./useFundingRate\";\nexport { usePositionStream } from \"./usePositionStream\";\nexport { useOrderStream } from \"./useOrderStream\";\nexport { useMarketTradeStream } from \"./useMarketTradeStream\";\n\nexport { useCollateral } from \"./useCollateral\";\nexport type { CollateralOutputs } from \"./useCollateral\";\nexport { useMaxQty } from \"./useMaxQty\";\nexport { useMarginRatio } from \"./useMarginRatio\";\n\nexport { useChains } from \"./useChains\";\nexport type {\n UseChainsOptions,\n Chain,\n Chains,\n UseChainsReturnObject,\n} from \"./useChains\";\nexport { useChain } from \"./useChain\";\nexport { useWithdraw } from \"./useWithdraw\";\nexport { useDeposit } from \"./useDeposit\";\n\nexport { useHoldingStream } from \"./useHoldingStream\";\nexport { useWalletSubscription } from \"./useWalletSubscription\";\nexport { useSettleSubscription } from \"./useSettleSubscription\";\nexport { usePrivateDataObserver } from \"./usePrivateDataObserver\";\n\nexport { useSymbolPriceRange } from \"./useSymbolPriceRange\";\n"],"names":["useOrderbookStream","useOrderEntry","useSymbolsInfo","useAccountInfo","useMarketsStream","useMarkets","MarketsType","useMarkPricesStream","useMarkPrice","useIndexPrice","useLeverage","useTickerStream","useFundingRate","usePositionStream","useOrderStream","useMarketTradeStream","useCollateral","useMaxQty","useMarginRatio","useChains","useChain","useWithdraw","useDeposit","useHoldingStream","useWalletSubscription","useSettleSubscription","usePrivateDataObserver","useSymbolPriceRange"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,kBAAkB,QAAQ,uBAAuB;AAM1D,SAASC,aAAa,QAAQ,kBAAkB;AAEhD,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,cAAc,QAAQ,mBAAmB;AAElD,SAASC,gBAAgB,QAAQ,qBAAqB;AACtD,SAASC,UAAU,EAAEC,WAAW,QAAQ,eAAe;AAEvD,SAASC,mBAAmB,QAAQ,wBAAwB;AAC5D,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,WAAW,QAAQ,gBAAgB;AAE5C,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,iBAAiB,QAAQ,sBAAsB;AACxD,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,oBAAoB,QAAQ,yBAAyB;AAE9D,SAASC,aAAa,QAAQ,kBAAkB;AAEhD,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,cAAc,QAAQ,mBAAmB;AAElD,SAASC,SAAS,QAAQ,cAAc;AAOxC,SAASC,QAAQ,QAAQ,aAAa;AACtC,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SAASC,UAAU,QAAQ,eAAe;AAE1C,SAASC,gBAAgB,QAAQ,qBAAqB;AACtD,SAASC,qBAAqB,QAAQ,0BAA0B;AAChE,SAASC,qBAAqB,QAAQ,0BAA0B;AAChE,SAASC,sBAAsB,QAAQ,2BAA2B;AAElE,SAASC,mBAAmB,QAAQ,wBAAwB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/orderly/useAccountInfo.ts"],"sourcesContent":["import { API } from \"@orderly.network/types\";\nimport { usePrivateQuery } from \"../usePrivateQuery\";\n\nexport const useAccountInfo = () => {\n return usePrivateQuery<API.AccountInfo>(\"/v1/client/info\");\n};\n"],"names":["usePrivateQuery","useAccountInfo"],"rangeMappings":";;;","mappings":"AACA,SAASA,eAAe,QAAQ,qBAAqB;AAErD,OAAO,MAAMC,iBAAiB;IAC5B,OAAOD,gBAAiC;AAC1C,EAAE"}
|
package/esm/orderly/useChain.js
CHANGED
|
@@ -1,22 +1,29 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
2
|
import { useQuery } from "../useQuery";
|
|
3
3
|
import { chainsInfoMap } from "@orderly.network/types";
|
|
4
|
-
export const useChain = (token)
|
|
4
|
+
export const useChain = (token)=>{
|
|
5
5
|
const { data, isLoading } = useQuery("/v1/public/token");
|
|
6
|
-
const chains = useMemo(()
|
|
7
|
-
if (!data)
|
|
8
|
-
|
|
9
|
-
let item = data.find((chain) => chain.token === token);
|
|
6
|
+
const chains = useMemo(()=>{
|
|
7
|
+
if (!data) return null;
|
|
8
|
+
let item = data.find((chain)=>chain.token === token);
|
|
10
9
|
if (item) {
|
|
11
|
-
item.chain_details = item.chain_details.map((d)
|
|
10
|
+
item.chain_details = item.chain_details.map((d)=>{
|
|
12
11
|
const chain = chainsInfoMap.get(Number(d.chain_id));
|
|
13
12
|
return {
|
|
14
13
|
...d,
|
|
15
|
-
chain_name: chain?.chainName ?? "--"
|
|
14
|
+
chain_name: chain?.chainName ?? "--"
|
|
16
15
|
};
|
|
17
16
|
});
|
|
18
17
|
}
|
|
19
18
|
return item || null;
|
|
20
|
-
}, [
|
|
21
|
-
|
|
19
|
+
}, [
|
|
20
|
+
data,
|
|
21
|
+
token
|
|
22
|
+
]);
|
|
23
|
+
return {
|
|
24
|
+
chains,
|
|
25
|
+
isLoading
|
|
26
|
+
};
|
|
22
27
|
};
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=useChain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/orderly/useChain.ts"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useQuery } from \"../useQuery\";\nimport { API, chainsInfoMap } from \"@orderly.network/types\";\n\nexport const useChain = (token: string) => {\n const { data, isLoading } = useQuery<API.Chain[]>(\"/v1/public/token\");\n\n const chains = useMemo(() => {\n if (!data) return null;\n\n let item = data.find((chain) => chain.token === token);\n\n if (item) {\n item.chain_details = item.chain_details.map((d) => {\n const chain = chainsInfoMap.get(Number(d.chain_id));\n return {\n ...d,\n chain_name: chain?.chainName ?? \"--\",\n };\n });\n }\n\n return item || null;\n }, [data, token]);\n\n return { chains, isLoading };\n};\n"],"names":["useMemo","useQuery","chainsInfoMap","useChain","token","data","isLoading","chains","item","find","chain","chain_details","map","d","get","Number","chain_id","chain_name","chainName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,OAAO,QAAQ,QAAQ;AAChC,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAAcC,aAAa,QAAQ,yBAAyB;AAE5D,OAAO,MAAMC,WAAW,CAACC;IACvB,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAE,GAAGL,SAAsB;IAElD,MAAMM,SAASP,QAAQ;QACrB,IAAI,CAACK,MAAM,OAAO;QAElB,IAAIG,OAAOH,KAAKI,IAAI,CAAC,CAACC,QAAUA,MAAMN,KAAK,KAAKA;QAEhD,IAAII,MAAM;YACRA,KAAKG,aAAa,GAAGH,KAAKG,aAAa,CAACC,GAAG,CAAC,CAACC;gBAC3C,MAAMH,QAAQR,cAAcY,GAAG,CAACC,OAAOF,EAAEG,QAAQ;gBACjD,OAAO;oBACL,GAAGH,CAAC;oBACJI,YAAYP,OAAOQ,aAAa;gBAClC;YACF;QACF;QAEA,OAAOV,QAAQ;IACjB,GAAG;QAACH;QAAMD;KAAM;IAEhB,OAAO;QAAEG;QAAQD;IAAU;AAC7B,EAAE"}
|
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import { NetworkId, type API } from "@orderly.network/types";
|
|
1
|
+
import { NetworkId, type API, Chain as FlatChain } from "@orderly.network/types";
|
|
2
2
|
import { SWRConfiguration } from "swr";
|
|
3
|
-
type InputOptions = {
|
|
4
|
-
filter?: (item: API.Chain) => boolean;
|
|
5
|
-
pick?: "dexs" | "network_infos" | "token_infos";
|
|
6
|
-
};
|
|
7
3
|
export type Chain = API.Chain & {
|
|
8
4
|
nativeToken?: API.TokenInfo;
|
|
9
5
|
};
|
|
@@ -14,15 +10,18 @@ export type Chains<T extends NetworkId | undefined = undefined, K extends keyof
|
|
|
14
10
|
testnet: API.Chain[];
|
|
15
11
|
mainnet: API.Chain[];
|
|
16
12
|
};
|
|
17
|
-
export type
|
|
18
|
-
|
|
13
|
+
export type UseChainsOptions = {
|
|
14
|
+
filter?: (item: API.Chain) => boolean;
|
|
15
|
+
pick?: "dexs" | "network_infos" | "token_infos";
|
|
16
|
+
} & SWRConfiguration;
|
|
17
|
+
export type UseChainsReturnObject = {
|
|
19
18
|
findByChainId: (chainId: number, field?: string) => Chain | undefined;
|
|
20
19
|
error: any;
|
|
21
20
|
};
|
|
22
|
-
export declare function useChains(networkId?: undefined, options?: undefined): [Chains<undefined, undefined>,
|
|
23
|
-
export declare function useChains<T extends NetworkId | undefined, K extends
|
|
24
|
-
Chains<T, K extends
|
|
25
|
-
|
|
21
|
+
export declare function useChains(networkId?: undefined, options?: undefined): [Chains<undefined, undefined>, UseChainsReturnObject];
|
|
22
|
+
export declare function useChains<T extends NetworkId | undefined, K extends UseChainsOptions | undefined>(networkId?: T, options?: K): [
|
|
23
|
+
Chains<T, K extends UseChainsOptions ? K["pick"] extends keyof API.Chain ? K["pick"] : undefined : undefined>,
|
|
24
|
+
UseChainsReturnObject
|
|
26
25
|
];
|
|
27
26
|
/** orderly chains array form (/v1/public/token) api */
|
|
28
27
|
export declare function fillChainsInfo(chains?: API.Chain[], filter?: (chain: any) => boolean): API.Chain[];
|
|
@@ -30,5 +29,5 @@ export declare function fillChainsInfo(chains?: API.Chain[], filter?: (chain: an
|
|
|
30
29
|
export declare function updateOrderlyChains(chains: API.Chain[], chainInfos: any, filter?: (chain: any) => boolean): API.Chain[];
|
|
31
30
|
/** if chain is testnet, update testnet network_infos */
|
|
32
31
|
export declare function updateTestnetInfo(testnetArr: API.Chain[], chainId: number, chain: API.Chain): void;
|
|
33
|
-
export
|
|
32
|
+
export declare function filterByAllowedChains(chains: API.Chain[], allowedChains?: FlatChain[]): API.Chain[];
|
|
34
33
|
//# sourceMappingURL=useChains.d.ts.map
|