@orderly.network/hooks 0.0.14 → 0.0.15
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/index.d.mts +2 -4
- package/dist/index.d.ts +2 -4
- package/dist/index.js +45 -32
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +49 -35
- package/dist/index.mjs.map +1 -1
- package/package.json +7 -7
package/dist/index.mjs
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import React, { createContext, useContext,
|
|
1
|
+
import React, { createContext, useContext, useState, useEffect, useCallback, useMemo } from 'react';
|
|
2
2
|
import useSWR, { useSWRConfig } from 'swr';
|
|
3
3
|
export { default as useSWR } from 'swr';
|
|
4
|
-
import {
|
|
4
|
+
import { WS, get, mutate, WebSocketClient } from '@orderly.network/net';
|
|
5
5
|
import useSWRMutation from 'swr/mutation';
|
|
6
6
|
import useConstant from 'use-constant';
|
|
7
7
|
export { default as useConstant } from 'use-constant';
|
|
8
8
|
import { SimpleDI, Account, getMockSigner } from '@orderly.network/core';
|
|
9
|
-
import { useObservable } from 'rxjs-hooks';
|
|
10
|
-
export { useEventCallback, useObservable } from 'rxjs-hooks';
|
|
11
9
|
import { AccountStatusEnum, SystemStateEnum, ExchangeStatusEnum, OrderSide, OrderType } from '@orderly.network/types';
|
|
12
10
|
import { BehaviorSubject, merge } from 'rxjs';
|
|
13
11
|
import { map } from 'rxjs/operators';
|
|
12
|
+
import { useObservable } from 'rxjs-hooks';
|
|
13
|
+
export { useEventCallback, useObservable } from 'rxjs-hooks';
|
|
14
14
|
import { compose, defaultTo, head, last, pathOr, propOr } from 'ramda';
|
|
15
15
|
import useSWRSubscription from 'swr/subscription';
|
|
16
16
|
import { Decimal, zero, getPrecisionByNumber, timeConvertString } from '@orderly.network/utils';
|
|
@@ -223,10 +223,16 @@ var useAccount = () => {
|
|
|
223
223
|
}
|
|
224
224
|
return account5;
|
|
225
225
|
});
|
|
226
|
-
const state =
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
226
|
+
const [state, setState] = useState(account4.stateValue);
|
|
227
|
+
const statusChangeHandler = (nextState) => {
|
|
228
|
+
setState(() => nextState);
|
|
229
|
+
};
|
|
230
|
+
useEffect(() => {
|
|
231
|
+
account4.on("change:status", statusChangeHandler);
|
|
232
|
+
return () => {
|
|
233
|
+
account4.off("change:status", statusChangeHandler);
|
|
234
|
+
};
|
|
235
|
+
}, []);
|
|
230
236
|
const login = useCallback(
|
|
231
237
|
(address) => {
|
|
232
238
|
account4.login(address);
|
|
@@ -347,27 +353,6 @@ var useAppState = () => {
|
|
|
347
353
|
}
|
|
348
354
|
);
|
|
349
355
|
};
|
|
350
|
-
var WS_NAME = "websocketClient";
|
|
351
|
-
var useWebSocketClient = () => {
|
|
352
|
-
const ws = useConstant(() => {
|
|
353
|
-
let websocketClient = SimpleDI.get(WS_NAME);
|
|
354
|
-
if (!websocketClient) {
|
|
355
|
-
websocketClient = new WebSocketClient({
|
|
356
|
-
accountId: "OqdphuyCtYWxwzhxyLLjOWNdFP7sQt8RPWzmb5xY",
|
|
357
|
-
networkId: "testnet",
|
|
358
|
-
onSigntureRequest: (accountId) => __async(void 0, null, function* () {
|
|
359
|
-
const signer = getMockSigner();
|
|
360
|
-
const timestamp = (/* @__PURE__ */ new Date()).getTime();
|
|
361
|
-
const result = yield signer.signText(timestamp.toString());
|
|
362
|
-
return __spreadProps(__spreadValues({}, result), { timestamp });
|
|
363
|
-
})
|
|
364
|
-
});
|
|
365
|
-
SimpleDI.registerByName(WS_NAME, websocketClient);
|
|
366
|
-
}
|
|
367
|
-
return websocketClient;
|
|
368
|
-
});
|
|
369
|
-
return ws;
|
|
370
|
-
};
|
|
371
356
|
var DataSourceContext = createContext({});
|
|
372
357
|
var DataSourceProvider = (props) => {
|
|
373
358
|
console.log("render DataSourceProvider");
|
|
@@ -376,15 +361,19 @@ var DataSourceProvider = (props) => {
|
|
|
376
361
|
});
|
|
377
362
|
return /* @__PURE__ */ React.createElement(DataSourceContext.Provider, { value: {} }, props.children);
|
|
378
363
|
};
|
|
379
|
-
var
|
|
364
|
+
var WS_NAME = "nativeWebsocketClient";
|
|
380
365
|
var useWS = () => {
|
|
366
|
+
useAccount();
|
|
367
|
+
const { configStore } = useContext(OrderlyContext);
|
|
381
368
|
const ws = useConstant(() => {
|
|
382
|
-
let websocketClient = SimpleDI.get(
|
|
369
|
+
let websocketClient = SimpleDI.get(WS_NAME);
|
|
383
370
|
const account4 = SimpleDI.get(Account.instanceName);
|
|
384
371
|
if (!websocketClient) {
|
|
385
372
|
websocketClient = new WS({
|
|
386
373
|
// accountId: "OqdphuyCtYWxwzhxyLLjOWNdFP7sQt8RPWzmb5xY",
|
|
387
374
|
networkId: "testnet",
|
|
375
|
+
publicUrl: configStore.get("publicWsUrl"),
|
|
376
|
+
privateUrl: configStore.get("privateWsUrl"),
|
|
388
377
|
onSigntureRequest: (accountId) => __async(void 0, null, function* () {
|
|
389
378
|
const signer = account4.signer;
|
|
390
379
|
const timestamp = (/* @__PURE__ */ new Date()).getTime();
|
|
@@ -392,7 +381,7 @@ var useWS = () => {
|
|
|
392
381
|
return __spreadProps(__spreadValues({}, result), { timestamp });
|
|
393
382
|
})
|
|
394
383
|
});
|
|
395
|
-
SimpleDI.registerByName(
|
|
384
|
+
SimpleDI.registerByName(WS_NAME, websocketClient);
|
|
396
385
|
}
|
|
397
386
|
return websocketClient;
|
|
398
387
|
});
|
|
@@ -641,8 +630,6 @@ function createGetter(data, depth = 2) {
|
|
|
641
630
|
}
|
|
642
631
|
});
|
|
643
632
|
}
|
|
644
|
-
|
|
645
|
-
// src/orderly/useSymbolsInfo.ts
|
|
646
633
|
var useSymbolsInfo = () => {
|
|
647
634
|
const { data = {} } = useQuery(`/v1/public/info`, {
|
|
648
635
|
focusThrottleInterval: 1e3 * 60 * 60 * 24,
|
|
@@ -656,7 +643,11 @@ var useSymbolsInfo = () => {
|
|
|
656
643
|
for (let index = 0; index < data2.rows.length; index++) {
|
|
657
644
|
const item = data2.rows[index];
|
|
658
645
|
const arr = item.symbol.split("_");
|
|
646
|
+
const base_dp = getPrecisionByNumber(item.base_tick);
|
|
647
|
+
const quote_dp = getPrecisionByNumber(item.quote_tick);
|
|
659
648
|
obj[item.symbol] = __spreadProps(__spreadValues({}, item), {
|
|
649
|
+
base_dp,
|
|
650
|
+
quote_dp,
|
|
660
651
|
base: arr[1],
|
|
661
652
|
quote: arr[2],
|
|
662
653
|
type: arr[0],
|
|
@@ -1353,6 +1344,29 @@ var useOrderEntry = (symbol, side, reduceOnly = false, options) => {
|
|
|
1353
1344
|
symbolConfig: symbolInfo[symbol]()
|
|
1354
1345
|
};
|
|
1355
1346
|
};
|
|
1347
|
+
var WS_NAME2 = "websocketClient";
|
|
1348
|
+
var useWebSocketClient = () => {
|
|
1349
|
+
const ws = useConstant(() => {
|
|
1350
|
+
let websocketClient = SimpleDI.get(WS_NAME2);
|
|
1351
|
+
if (!websocketClient) {
|
|
1352
|
+
websocketClient = new WebSocketClient({
|
|
1353
|
+
accountId: "OqdphuyCtYWxwzhxyLLjOWNdFP7sQt8RPWzmb5xY",
|
|
1354
|
+
networkId: "testnet",
|
|
1355
|
+
onSigntureRequest: (accountId) => __async(void 0, null, function* () {
|
|
1356
|
+
const signer = getMockSigner();
|
|
1357
|
+
const timestamp = (/* @__PURE__ */ new Date()).getTime();
|
|
1358
|
+
const result = yield signer.signText(timestamp.toString());
|
|
1359
|
+
return __spreadProps(__spreadValues({}, result), { timestamp });
|
|
1360
|
+
})
|
|
1361
|
+
});
|
|
1362
|
+
SimpleDI.registerByName(WS_NAME2, websocketClient);
|
|
1363
|
+
}
|
|
1364
|
+
return websocketClient;
|
|
1365
|
+
});
|
|
1366
|
+
return ws;
|
|
1367
|
+
};
|
|
1368
|
+
|
|
1369
|
+
// src/orderly/useFetures.ts
|
|
1356
1370
|
var useFetures = () => {
|
|
1357
1371
|
const { data, isLoading, error } = useQuery(
|
|
1358
1372
|
`/v1/public/futures`,
|
|
@@ -1683,6 +1697,6 @@ var useFundingRate2 = (symbol) => {
|
|
|
1683
1697
|
return useQuery(`/v1/public/funding_rate`);
|
|
1684
1698
|
};
|
|
1685
1699
|
|
|
1686
|
-
export { DataSourceProvider, OrderStatus, OrderlyContext, OrderlyProvider, apis_exports as apis, useAccount, useAccountInfo, useAppState, useChains, useCollateral, useFetures, useFundingRate, useMarginRatio, useMarkPrice, useMarkPricesStream, useMarketsStream, useMaxQty, useMutation, useOrderEntry, useOrderStream, useOrderbookStream, usePositionStream, usePrivateObserve, usePrivateQuery, useQuery, useSymbolsInfo, useTickerStream, useTokenInfo, useTopicObserve, useTradeStream, useTradingView, useWS
|
|
1700
|
+
export { DataSourceProvider, OrderStatus, OrderlyContext, OrderlyProvider, apis_exports as apis, useAccount, useAccountInfo, useAppState, useChains, useCollateral, useFetures, useFundingRate, useMarginRatio, useMarkPrice, useMarkPricesStream, useMarketsStream, useMaxQty, useMutation, useOrderEntry, useOrderStream, useOrderbookStream, usePositionStream, usePrivateObserve, usePrivateQuery, useQuery, useSymbolsInfo, useTickerStream, useTokenInfo, useTopicObserve, useTradeStream, useTradingView, useWS };
|
|
1687
1701
|
//# sourceMappingURL=out.js.map
|
|
1688
1702
|
//# sourceMappingURL=index.mjs.map
|