@orderly.network/hooks 1.3.0-alpha.0 → 1.4.0-alpha.0
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/dataProvider.d.ts.map +1 -1
- package/esm/dataProvider.js +0 -2
- package/esm/dataProvider.js.map +1 -1
- package/esm/index.d.ts +4 -3
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +4 -3
- package/esm/index.js.map +1 -1
- package/esm/orderly/orderlyHooks.d.ts +3 -2
- package/esm/orderly/orderlyHooks.d.ts.map +1 -1
- package/esm/orderly/orderlyHooks.js +3 -2
- package/esm/orderly/orderlyHooks.js.map +1 -1
- package/esm/orderly/useCollateral.js +2 -2
- package/esm/orderly/useCollateral.js.map +1 -1
- package/esm/orderly/useMarginRatio.js +1 -1
- package/esm/orderly/useMarginRatio.js.map +1 -1
- package/esm/orderly/useMaxQty.js +2 -2
- package/esm/orderly/useMaxQty.js.map +1 -1
- package/esm/orderly/useOrderEntry.d.ts.map +1 -1
- package/esm/orderly/useOrderEntry.js +15 -12
- package/esm/orderly/useOrderEntry.js.map +1 -1
- package/esm/orderly/useOrderEntryNext/index.d.ts +1 -0
- package/esm/orderly/useOrderEntryNext/index.d.ts.map +1 -0
- package/esm/orderly/useOrderEntryNext/index.js +2 -0
- package/esm/orderly/useOrderEntryNext/index.js.map +1 -0
- package/esm/orderly/{useOrderStream.d.ts → useOrderStream/useOrderStream.d.ts} +19 -12
- package/esm/orderly/useOrderStream/useOrderStream.d.ts.map +1 -0
- package/esm/orderly/{useOrderStream.js → useOrderStream/useOrderStream.js} +91 -26
- package/esm/orderly/useOrderStream/useOrderStream.js.map +1 -0
- package/esm/orderly/useOrderbookStream.d.ts.map +1 -1
- package/esm/orderly/useOrderbookStream.js +13 -6
- package/esm/orderly/useOrderbookStream.js.map +1 -1
- package/esm/orderly/{usePositionStream.d.ts → usePositionStream/usePositionStream.d.ts} +1 -1
- package/esm/orderly/usePositionStream/usePositionStream.d.ts.map +1 -0
- package/esm/orderly/{usePositionStream.js → usePositionStream/usePositionStream.js} +30 -22
- package/esm/orderly/usePositionStream/usePositionStream.js.map +1 -0
- package/esm/orderly/usePositionStream/utils.d.ts +8 -0
- package/esm/orderly/usePositionStream/utils.d.ts.map +1 -0
- package/esm/orderly/usePositionStream/utils.js +34 -0
- package/esm/orderly/usePositionStream/utils.js.map +1 -0
- package/esm/orderly/usePrivateDataObserver.d.ts.map +1 -1
- package/esm/orderly/usePrivateDataObserver.js +30 -43
- package/esm/orderly/usePrivateDataObserver.js.map +1 -1
- package/esm/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts.map +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts +2 -0
- package/esm/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts.map +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/index.d.ts +32 -0
- package/esm/orderly/useTakeProfitAndStopLoss/index.d.ts.map +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/index.js +23 -0
- package/esm/orderly/useTakeProfitAndStopLoss/index.js.map +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts +59 -0
- package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts.map +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.js +211 -0
- package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.js.map +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/utils.d.ts +70 -0
- package/esm/orderly/useTakeProfitAndStopLoss/utils.d.ts.map +1 -0
- package/esm/orderly/useTakeProfitAndStopLoss/utils.js +226 -0
- package/esm/orderly/useTakeProfitAndStopLoss/utils.js.map +1 -0
- package/esm/services/orderCreator/__test__/limitOrderCreator.test.d.ts +2 -0
- package/esm/services/orderCreator/__test__/limitOrderCreator.test.d.ts.map +1 -0
- package/esm/services/orderCreator/__test__/orderCreator.test.d.ts +2 -0
- package/esm/services/orderCreator/__test__/orderCreator.test.d.ts.map +1 -0
- package/esm/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts +2 -0
- package/esm/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts.map +1 -0
- package/esm/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts +2 -0
- package/esm/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts.map +1 -0
- package/esm/services/orderCreator/__test__/tpslOrderCreator.test.d.ts +2 -0
- package/esm/services/orderCreator/__test__/tpslOrderCreator.test.d.ts.map +1 -0
- package/esm/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts +2 -0
- package/esm/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts.map +1 -0
- package/esm/services/orderCreator/baseAlgoCreator.d.ts +22 -0
- package/esm/services/orderCreator/baseAlgoCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/baseAlgoCreator.js +57 -0
- package/esm/services/orderCreator/baseAlgoCreator.js.map +1 -0
- package/esm/services/orderCreator/baseCreator.d.ts +14 -0
- package/esm/services/orderCreator/baseCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/baseCreator.js +92 -0
- package/esm/services/orderCreator/baseCreator.js.map +1 -0
- package/esm/services/orderCreator/factory.d.ts +7 -0
- package/esm/services/orderCreator/factory.d.ts.map +1 -0
- package/esm/services/orderCreator/factory.js +45 -0
- package/esm/services/orderCreator/factory.js.map +1 -0
- package/esm/services/orderCreator/fokCreator.d.ts +4 -0
- package/esm/services/orderCreator/fokCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/fokCreator.js +5 -0
- package/esm/services/orderCreator/fokCreator.js.map +1 -0
- package/esm/services/orderCreator/generalCreator.d.ts +8 -0
- package/esm/services/orderCreator/generalCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/generalCreator.js +15 -0
- package/esm/services/orderCreator/generalCreator.js.map +1 -0
- package/esm/services/orderCreator/interface.d.ts +23 -0
- package/esm/services/orderCreator/interface.d.ts.map +1 -0
- package/esm/services/orderCreator/interface.js +3 -0
- package/esm/services/orderCreator/interface.js.map +1 -0
- package/esm/services/orderCreator/iocCreator.d.ts +4 -0
- package/esm/services/orderCreator/iocCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/iocCreator.js +5 -0
- package/esm/services/orderCreator/iocCreator.js.map +1 -0
- package/esm/services/orderCreator/limitOrderCreator.d.ts +8 -0
- package/esm/services/orderCreator/limitOrderCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/limitOrderCreator.js +69 -0
- package/esm/services/orderCreator/limitOrderCreator.js.map +1 -0
- package/esm/services/orderCreator/marketOrderCreator.d.ts +24 -0
- package/esm/services/orderCreator/marketOrderCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/marketOrderCreator.js +18 -0
- package/esm/services/orderCreator/marketOrderCreator.js.map +1 -0
- package/esm/services/orderCreator/postOnlyCreator.d.ts +4 -0
- package/esm/services/orderCreator/postOnlyCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/postOnlyCreator.js +5 -0
- package/esm/services/orderCreator/postOnlyCreator.js.map +1 -0
- package/esm/services/orderCreator/stopLimitOrderCreator.d.ts +11 -0
- package/esm/services/orderCreator/stopLimitOrderCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/stopLimitOrderCreator.js +84 -0
- package/esm/services/orderCreator/stopLimitOrderCreator.js.map +1 -0
- package/esm/services/orderCreator/stopMarketOrderCreator.d.ts +30 -0
- package/esm/services/orderCreator/stopMarketOrderCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/stopMarketOrderCreator.js +46 -0
- package/esm/services/orderCreator/stopMarketOrderCreator.js.map +1 -0
- package/esm/services/orderCreator/tpslOrderCreator.d.ts +32 -0
- package/esm/services/orderCreator/tpslOrderCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/tpslOrderCreator.js +88 -0
- package/esm/services/orderCreator/tpslOrderCreator.js.map +1 -0
- package/esm/services/orderCreator/tpslPositionOrderCreator.d.ts +33 -0
- package/esm/services/orderCreator/tpslPositionOrderCreator.d.ts.map +1 -0
- package/esm/services/orderCreator/tpslPositionOrderCreator.js +74 -0
- package/esm/services/orderCreator/tpslPositionOrderCreator.js.map +1 -0
- package/esm/services/orderMerge/algoOrderMergeHandler.d.ts +9 -0
- package/esm/services/orderMerge/algoOrderMergeHandler.d.ts.map +1 -0
- package/esm/services/orderMerge/algoOrderMergeHandler.js +38 -0
- package/esm/services/orderMerge/algoOrderMergeHandler.js.map +1 -0
- package/esm/services/orderMerge/baseMergeHandler.d.ts +22 -0
- package/esm/services/orderMerge/baseMergeHandler.d.ts.map +1 -0
- package/esm/services/orderMerge/baseMergeHandler.js +160 -0
- package/esm/services/orderMerge/baseMergeHandler.js.map +1 -0
- package/esm/services/orderMerge/interface.d.ts +8 -0
- package/esm/services/orderMerge/interface.d.ts.map +1 -0
- package/esm/services/orderMerge/interface.js +3 -0
- package/esm/services/orderMerge/interface.js.map +1 -0
- package/esm/services/orderMerge/regularOrderMergeHandler.d.ts +8 -0
- package/esm/services/orderMerge/regularOrderMergeHandler.d.ts.map +1 -0
- package/esm/services/orderMerge/regularOrderMergeHandler.js +15 -0
- package/esm/services/orderMerge/regularOrderMergeHandler.js.map +1 -0
- package/esm/usePoster.d.ts +3 -0
- package/esm/usePoster.d.ts.map +1 -1
- package/esm/usePoster.js +3 -1
- package/esm/usePoster.js.map +1 -1
- package/esm/utils/createOrder.d.ts +0 -55
- package/esm/utils/createOrder.d.ts.map +1 -1
- package/esm/utils/createOrder.js +0 -334
- package/esm/utils/createOrder.js.map +1 -1
- package/esm/utils/fokCreator.d.ts +1 -0
- package/esm/utils/fokCreator.d.ts.map +1 -0
- package/esm/utils/fokCreator.js +2 -0
- package/esm/utils/fokCreator.js.map +1 -0
- package/esm/utils/index.d.ts +5 -0
- package/esm/utils/index.d.ts.map +1 -0
- package/esm/utils/index.js +6 -0
- package/esm/utils/index.js.map +1 -0
- package/esm/utils/order.d.ts +2 -0
- package/esm/utils/order.d.ts.map +1 -0
- package/esm/utils/order.js +3 -0
- package/esm/utils/order.js.map +1 -0
- package/esm/utils/swr.d.ts +3 -1
- package/esm/utils/swr.d.ts.map +1 -1
- package/esm/utils/swr.js +123 -89
- package/esm/utils/swr.js.map +1 -1
- package/esm/utils/ws.d.ts +2 -0
- package/esm/utils/ws.d.ts.map +1 -0
- package/esm/utils/ws.js +9 -0
- package/esm/utils/ws.js.map +1 -0
- package/esm/version.d.ts +1 -1
- package/esm/version.js +2 -2
- package/esm/version.js.map +1 -1
- package/lib/dataProvider.d.ts.map +1 -1
- package/lib/dataProvider.js +0 -2
- package/lib/dataProvider.js.map +1 -1
- package/lib/index.d.ts +4 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +10 -3
- package/lib/index.js.map +1 -1
- package/lib/orderly/orderlyHooks.d.ts +3 -2
- package/lib/orderly/orderlyHooks.d.ts.map +1 -1
- package/lib/orderly/orderlyHooks.js +6 -2
- package/lib/orderly/orderlyHooks.js.map +1 -1
- package/lib/orderly/useCollateral.js +2 -2
- package/lib/orderly/useCollateral.js.map +1 -1
- package/lib/orderly/useMarginRatio.js +1 -1
- package/lib/orderly/useMarginRatio.js.map +1 -1
- package/lib/orderly/useMaxQty.js +2 -2
- package/lib/orderly/useMaxQty.js.map +1 -1
- package/lib/orderly/useOrderEntry.d.ts.map +1 -1
- package/lib/orderly/useOrderEntry.js +14 -12
- package/lib/orderly/useOrderEntry.js.map +1 -1
- package/lib/orderly/useOrderEntryNext/index.d.ts +1 -0
- package/lib/orderly/useOrderEntryNext/index.d.ts.map +1 -0
- package/lib/orderly/useOrderEntryNext/index.js +3 -0
- package/lib/orderly/useOrderEntryNext/index.js.map +1 -0
- package/lib/orderly/{useOrderStream.d.ts → useOrderStream/useOrderStream.d.ts} +19 -12
- package/lib/orderly/useOrderStream/useOrderStream.d.ts.map +1 -0
- package/lib/orderly/{useOrderStream.js → useOrderStream/useOrderStream.js} +89 -25
- package/lib/orderly/useOrderStream/useOrderStream.js.map +1 -0
- package/lib/orderly/useOrderbookStream.d.ts.map +1 -1
- package/lib/orderly/useOrderbookStream.js +12 -5
- package/lib/orderly/useOrderbookStream.js.map +1 -1
- package/lib/orderly/{usePositionStream.d.ts → usePositionStream/usePositionStream.d.ts} +1 -1
- package/lib/orderly/usePositionStream/usePositionStream.d.ts.map +1 -0
- package/lib/orderly/{usePositionStream.js → usePositionStream/usePositionStream.js} +30 -22
- package/lib/orderly/usePositionStream/usePositionStream.js.map +1 -0
- package/lib/orderly/usePositionStream/utils.d.ts +8 -0
- package/lib/orderly/usePositionStream/utils.d.ts.map +1 -0
- package/lib/orderly/usePositionStream/utils.js +55 -0
- package/lib/orderly/usePositionStream/utils.js.map +1 -0
- package/lib/orderly/usePrivateDataObserver.d.ts.map +1 -1
- package/lib/orderly/usePrivateDataObserver.js +28 -41
- package/lib/orderly/usePrivateDataObserver.js.map +1 -1
- package/lib/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts.map +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts +2 -0
- package/lib/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts.map +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/index.d.ts +32 -0
- package/lib/orderly/useTakeProfitAndStopLoss/index.d.ts.map +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/index.js +33 -0
- package/lib/orderly/useTakeProfitAndStopLoss/index.js.map +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts +59 -0
- package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts.map +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.js +218 -0
- package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.js.map +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/utils.d.ts +70 -0
- package/lib/orderly/useTakeProfitAndStopLoss/utils.d.ts.map +1 -0
- package/lib/orderly/useTakeProfitAndStopLoss/utils.js +252 -0
- package/lib/orderly/useTakeProfitAndStopLoss/utils.js.map +1 -0
- package/lib/services/orderCreator/__test__/limitOrderCreator.test.d.ts +2 -0
- package/lib/services/orderCreator/__test__/limitOrderCreator.test.d.ts.map +1 -0
- package/lib/services/orderCreator/__test__/orderCreator.test.d.ts +2 -0
- package/lib/services/orderCreator/__test__/orderCreator.test.d.ts.map +1 -0
- package/lib/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts +2 -0
- package/lib/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts.map +1 -0
- package/lib/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts +2 -0
- package/lib/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts.map +1 -0
- package/lib/services/orderCreator/__test__/tpslOrderCreator.test.d.ts +2 -0
- package/lib/services/orderCreator/__test__/tpslOrderCreator.test.d.ts.map +1 -0
- package/lib/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts +2 -0
- package/lib/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts.map +1 -0
- package/lib/services/orderCreator/baseAlgoCreator.d.ts +22 -0
- package/lib/services/orderCreator/baseAlgoCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/baseAlgoCreator.js +67 -0
- package/lib/services/orderCreator/baseAlgoCreator.js.map +1 -0
- package/lib/services/orderCreator/baseCreator.d.ts +14 -0
- package/lib/services/orderCreator/baseCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/baseCreator.js +102 -0
- package/lib/services/orderCreator/baseCreator.js.map +1 -0
- package/lib/services/orderCreator/factory.d.ts +7 -0
- package/lib/services/orderCreator/factory.d.ts.map +1 -0
- package/lib/services/orderCreator/factory.js +54 -0
- package/lib/services/orderCreator/factory.js.map +1 -0
- package/lib/services/orderCreator/fokCreator.d.ts +4 -0
- package/lib/services/orderCreator/fokCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/fokCreator.js +15 -0
- package/lib/services/orderCreator/fokCreator.js.map +1 -0
- package/lib/services/orderCreator/generalCreator.d.ts +8 -0
- package/lib/services/orderCreator/generalCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/generalCreator.js +25 -0
- package/lib/services/orderCreator/generalCreator.js.map +1 -0
- package/lib/services/orderCreator/interface.d.ts +23 -0
- package/lib/services/orderCreator/interface.d.ts.map +1 -0
- package/lib/services/orderCreator/interface.js +6 -0
- package/lib/services/orderCreator/interface.js.map +1 -0
- package/lib/services/orderCreator/iocCreator.d.ts +4 -0
- package/lib/services/orderCreator/iocCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/iocCreator.js +15 -0
- package/lib/services/orderCreator/iocCreator.js.map +1 -0
- package/lib/services/orderCreator/limitOrderCreator.d.ts +8 -0
- package/lib/services/orderCreator/limitOrderCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/limitOrderCreator.js +79 -0
- package/lib/services/orderCreator/limitOrderCreator.js.map +1 -0
- package/lib/services/orderCreator/marketOrderCreator.d.ts +24 -0
- package/lib/services/orderCreator/marketOrderCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/marketOrderCreator.js +28 -0
- package/lib/services/orderCreator/marketOrderCreator.js.map +1 -0
- package/lib/services/orderCreator/postOnlyCreator.d.ts +4 -0
- package/lib/services/orderCreator/postOnlyCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/postOnlyCreator.js +15 -0
- package/lib/services/orderCreator/postOnlyCreator.js.map +1 -0
- package/lib/services/orderCreator/stopLimitOrderCreator.d.ts +11 -0
- package/lib/services/orderCreator/stopLimitOrderCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/stopLimitOrderCreator.js +93 -0
- package/lib/services/orderCreator/stopLimitOrderCreator.js.map +1 -0
- package/lib/services/orderCreator/stopMarketOrderCreator.d.ts +30 -0
- package/lib/services/orderCreator/stopMarketOrderCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/stopMarketOrderCreator.js +56 -0
- package/lib/services/orderCreator/stopMarketOrderCreator.js.map +1 -0
- package/lib/services/orderCreator/tpslOrderCreator.d.ts +32 -0
- package/lib/services/orderCreator/tpslOrderCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/tpslOrderCreator.js +94 -0
- package/lib/services/orderCreator/tpslOrderCreator.js.map +1 -0
- package/lib/services/orderCreator/tpslPositionOrderCreator.d.ts +33 -0
- package/lib/services/orderCreator/tpslPositionOrderCreator.d.ts.map +1 -0
- package/lib/services/orderCreator/tpslPositionOrderCreator.js +83 -0
- package/lib/services/orderCreator/tpslPositionOrderCreator.js.map +1 -0
- package/lib/services/orderMerge/algoOrderMergeHandler.d.ts +9 -0
- package/lib/services/orderMerge/algoOrderMergeHandler.d.ts.map +1 -0
- package/lib/services/orderMerge/algoOrderMergeHandler.js +48 -0
- package/lib/services/orderMerge/algoOrderMergeHandler.js.map +1 -0
- package/lib/services/orderMerge/baseMergeHandler.d.ts +22 -0
- package/lib/services/orderMerge/baseMergeHandler.d.ts.map +1 -0
- package/lib/services/orderMerge/baseMergeHandler.js +170 -0
- package/lib/services/orderMerge/baseMergeHandler.js.map +1 -0
- package/lib/services/orderMerge/interface.d.ts +8 -0
- package/lib/services/orderMerge/interface.d.ts.map +1 -0
- package/lib/services/orderMerge/interface.js +6 -0
- package/lib/services/orderMerge/interface.js.map +1 -0
- package/lib/services/orderMerge/regularOrderMergeHandler.d.ts +8 -0
- package/lib/services/orderMerge/regularOrderMergeHandler.d.ts.map +1 -0
- package/lib/services/orderMerge/regularOrderMergeHandler.js +25 -0
- package/lib/services/orderMerge/regularOrderMergeHandler.js.map +1 -0
- package/lib/usePoster.d.ts +3 -0
- package/lib/usePoster.d.ts.map +1 -1
- package/lib/usePoster.js +3 -1
- package/lib/usePoster.js.map +1 -1
- package/lib/utils/createOrder.d.ts +0 -55
- package/lib/utils/createOrder.d.ts.map +1 -1
- package/lib/utils/createOrder.js +3 -375
- package/lib/utils/createOrder.js.map +1 -1
- package/lib/utils/fokCreator.d.ts +1 -0
- package/lib/utils/fokCreator.d.ts.map +1 -0
- package/lib/utils/fokCreator.js +3 -0
- package/lib/utils/fokCreator.js.map +1 -0
- package/lib/utils/index.d.ts +5 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/index.js +36 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/order.d.ts +2 -0
- package/lib/utils/order.d.ts.map +1 -0
- package/lib/utils/order.js +6 -0
- package/lib/utils/order.js.map +1 -0
- package/lib/utils/swr.d.ts +3 -1
- package/lib/utils/swr.d.ts.map +1 -1
- package/lib/utils/swr.js +128 -89
- package/lib/utils/swr.js.map +1 -1
- package/lib/utils/ws.d.ts +2 -0
- package/lib/utils/ws.d.ts.map +1 -0
- package/lib/utils/ws.js +19 -0
- package/lib/utils/ws.js.map +1 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +2 -2
- package/lib/version.js.map +1 -1
- package/package.json +10 -8
- package/esm/orderly/useOrderStream.d.ts.map +0 -1
- package/esm/orderly/useOrderStream.js.map +0 -1
- package/esm/orderly/usePositionStream.d.ts.map +0 -1
- package/esm/orderly/usePositionStream.js.map +0 -1
- package/lib/orderly/useOrderStream.d.ts.map +0 -1
- package/lib/orderly/useOrderStream.js.map +0 -1
- package/lib/orderly/usePositionStream.d.ts.map +0 -1
- package/lib/orderly/usePositionStream.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/createOrder.ts"],"sourcesContent":["import { OrderType, type API, OrderEntity } from \"@orderly.network/types\";\nimport { Decimal } from \"@orderly.network/utils\";\nimport { order } from \"@orderly.network/perp\";\nimport { OrderSide } from \"@orderly.network/types\";\n\nexport type VerifyResult = {\n [P in keyof OrderEntity]?: { type: string; message: string };\n};\nexport type OrderFormEntity = Pick<\n OrderEntity,\n \"order_price\" | \"order_quantity\" | \"total\"\n>;\n\ntype ValuesDepConfig = {\n // token: API.TokenInfo;\n symbol: API.SymbolExt;\n maxQty: number;\n markPrice: number;\n};\n\nexport interface OrderCreator {\n create: (values: OrderEntity, configs: ValuesDepConfig) => OrderEntity;\n validate: (\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ) => Promise<VerifyResult>;\n}\n\nconst { maxPrice, minPrice, scropePrice } = order;\n\nexport abstract class BaseOrderCreator implements OrderCreator {\n abstract create(values: OrderEntity, config: ValuesDepConfig): OrderEntity;\n abstract validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult>;\n\n baseOrder(data: OrderEntity): OrderEntity {\n const order: Partial<OrderEntity> = {\n symbol: data.symbol,\n order_type:\n data.order_type === OrderType.LIMIT\n ? !!data.order_type_ext\n ? data.order_type_ext\n : data.order_type\n : data.order_type,\n side: data.side,\n reduce_only: data.reduce_only,\n order_quantity: data.order_quantity,\n total: data.total,\n };\n\n if (data.visible_quantity === 0) {\n order.visible_quantity = data.visible_quantity;\n }\n\n return order as OrderEntity;\n }\n\n baseValidate(\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ): Promise<VerifyResult> {\n const errors: {\n [P in keyof OrderEntity]?: { type: string; message: string };\n } = {};\n\n const { maxQty, symbol } = configs;\n\n // @ts-ignore\n let { order_quantity, total, order_price, reduce_only } = values;\n const { min_notional } = symbol;\n\n if (!order_quantity) {\n // calculate order_quantity from total\n if (total && order_price) {\n const { quote_dp } = configs.symbol;\n const totalNumber = new Decimal(total);\n const qty = totalNumber.dividedBy(order_price).toFixed(quote_dp);\n order_quantity = qty;\n }\n }\n\n if (!order_quantity) {\n errors.order_quantity = {\n type: \"required\",\n message: \"quantity is required\",\n };\n } else {\n // need to use MaxQty+base_max, base_min to compare\n const { base_min, quote_dp, base_dp } = configs.symbol;\n const qty = new Decimal(order_quantity);\n if (qty.lt(base_min)) {\n errors.order_quantity = {\n type: \"min\",\n message: `quantity must be greater than ${new Decimal(base_min).todp(\n base_dp\n )}`,\n };\n // errors.order_quantity = `quantity must be greater than ${base_min}`;\n } else if (qty.gt(maxQty)) {\n errors.order_quantity = {\n type: \"max\",\n message: `quantity must be less than ${new Decimal(maxQty).todp(\n base_dp\n )}`,\n };\n }\n }\n\n if (!!total) {\n const { quote_max, quote_min, quote_dp } = configs.symbol;\n const totalNumber = new Decimal(total);\n if (totalNumber.lt(quote_min)) {\n errors.total = {\n type: \"min\",\n message: `Quantity must be at least ${new Decimal(quote_min).todp(\n quote_dp\n )}`,\n };\n } else if (totalNumber.gt(quote_max)) {\n errors.total = {\n type: \"max\",\n message: `Quantity should be less or equal than ${new Decimal(\n quote_max\n ).todp(quote_dp)}`,\n };\n }\n }\n\n const notionalHintStr = checkNotional(order_price, order_quantity, min_notional);\n \n if (notionalHintStr !== undefined && reduce_only !== true) {\n errors.total = {\n type: \"min\",\n message: notionalHintStr,\n }\n }\n\n return Promise.resolve(errors);\n }\n\n fixOrderQuantity(\n order: Partial<OrderEntity>,\n config: ValuesDepConfig\n ): OrderEntity {\n // if order_quantity is not set but total is set, calculate order_quantity from total\n if (!order.order_quantity && order.total && order.order_price) {\n const { base_dp } = config.symbol;\n const totalNumber = new Decimal(order.total);\n const qty = totalNumber.div(order.order_price).toDecimalPlaces(base_dp);\n order.order_quantity = qty.toNumber();\n\n delete order.total;\n }\n\n return order as OrderEntity;\n }\n}\n\nexport function checkNotional(price?: string | number, qty?: string | number, minNotional?: number): string | undefined {\n\n \n \n if (price !== undefined && qty !== undefined && minNotional !== undefined) {\n \n try {\n const calcNotional = new Decimal(price).mul(new Decimal(qty)).toNumber();\n const notional = Number.parseFloat(`${minNotional}`);\n \n const str = calcNotional < notional ? `The order value should be greater or equal to ${minNotional} USDC` : undefined;\n return str;\n } catch (e) {\n return undefined;\n }\n }\n\n return undefined;\n}\n\nexport class LimitOrderCreator extends BaseOrderCreator {\n create(values: OrderEntity, config: ValuesDepConfig): OrderEntity {\n const order = {\n ...this.baseOrder(values),\n order_price: values.order_price,\n };\n\n this.fixOrderQuantity(order, config);\n\n delete order['total'];\n delete order['trigger_price'];\n delete order['isStopOrder'];\n\n const { quote_dp } = config.symbol;\n if (values.order_price) {\n order[\"order_price\"] = new Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, Decimal.ROUND_DOWN);\n }\n\n return order;\n }\n validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, config).then((errors) => {\n // const errors = this.baseValidate(values, config);\n // @ts-ignore\n const { order_price, side } = values;\n\n if (!order_price) {\n errors.order_price = {\n type: \"required\",\n message: \"price is required\",\n };\n } else {\n const price = new Decimal(order_price);\n const { symbol } = config;\n const { price_range, price_scope } = symbol;\n const maxPriceNumber = maxPrice(config.markPrice, price_range);\n const minPriceNumber = minPrice(config.markPrice, price_range);\n const scropePriceNumbere = scropePrice(\n config.markPrice,\n price_scope,\n side\n );\n\n const priceRange = side === \"BUY\" ? {\n min: scropePriceNumbere,\n max: maxPriceNumber,\n } : {\n min: minPriceNumber,\n max: scropePriceNumbere\n };\n\n /// if side is 'buy', only check max price,\n /// if side is 'sell', only check min price,\n if (price.gt(priceRange?.max)) {\n errors.order_price = {\n type: \"max\",\n message: `Price must be less than ${new Decimal(\n priceRange.max\n ).todp(symbol.quote_dp)}`,\n };\n }\n if (price.lt(priceRange?.min)) {\n errors.order_price = {\n type: \"min\",\n message: `Price must be greater than ${new Decimal(\n priceRange.min\n ).todp(symbol.quote_dp)}`,\n };\n }\n\n }\n\n return errors;\n });\n }\n}\n\nexport class MarketOrderCreator extends BaseOrderCreator {\n create(values: OrderEntity): OrderEntity {\n const data = this.baseOrder(values);\n\n delete data[\"order_price\"];\n delete data['total'];\n delete data['trigger_price'];\n delete data['isStopOrder'];\n\n return {\n ...data,\n };\n }\n validate(\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, configs);\n }\n}\n\nexport class PostOnlyOrderCreator extends LimitOrderCreator { }\n\nexport class FOKOrderCreator extends LimitOrderCreator { }\nexport class IOCOrderCreator extends LimitOrderCreator { }\n\nexport class StopLimitOrderCreator extends LimitOrderCreator {\n create(values: OrderEntity, config: ValuesDepConfig): OrderEntity {\n const order = {\n ...this.baseOrder(values),\n order_price: values.order_price,\n trigger_price: values.trigger_price,\n algo_type: \"STOP\",\n type: \"LIMIT\",\n quantity: values[\"order_quantity\"],\n price: values[\"order_price\"],\n trigger_price_type: \"MARK_PRICE\",\n };\n this.fixOrderQuantity(order, config);\n delete order[\"order_quantity\"];\n delete order[\"order_price\"];\n // @ts-ignore\n delete order[\"order_type\"];\n // @ts-ignore\n delete order[\"isStopOrder\"];\n delete order['total'];\n\n const { quote_dp } = config.symbol;\n if (values.order_price) {\n order[\"order_price\"] = new Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, Decimal.ROUND_DOWN);\n }\n \n if (values.trigger_price) {\n order[\"trigger_price\"] = new Decimal(Number.parseFloat(values.trigger_price.toString())).toFixed(quote_dp, Decimal.ROUND_DOWN);\n }\n\n return order;\n }\n validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, config).then((errors) => {\n // const errors = this.baseValidate(values, config);\n // @ts-ignore\n const { order_price, trigger_price, side } = values;\n\n if (!order_price) {\n errors.order_price = {\n type: \"required\",\n message: \"price is required\",\n };\n }\n \n if (!trigger_price) {\n errors.trigger_price = {\n type: \"required\",\n message: \"Trigger price is required\",\n };\n } \n \n if (trigger_price && order_price) {\n const price = new Decimal(order_price);\n const { symbol } = config;\n const { price_range, price_scope } = symbol;\n const maxPriceNumber = maxPrice(trigger_price, price_range);\n const minPriceNumber = minPrice(trigger_price, price_range);\n const scropePriceNumbere = scropePrice(\n trigger_price,\n price_scope,\n side\n );\n\n const priceRange = side === \"BUY\" ? {\n min: scropePriceNumbere,\n max: maxPriceNumber,\n } : {\n min: minPriceNumber,\n max: scropePriceNumbere\n };\n\n /// if side is 'buy', only check max price,\n /// if side is 'sell', only check min price,\n if (price.gt(priceRange?.max)) {\n errors.order_price = {\n type: \"max\",\n message: `Price must be less than ${new Decimal(\n priceRange.max\n ).todp(symbol.quote_dp)}`,\n };\n }\n if (price.lt(priceRange?.min)) {\n errors.order_price = {\n type: \"min\",\n message: `Price must be greater than ${new Decimal(\n priceRange.min\n ).todp(symbol.quote_dp)}`,\n };\n }\n }\n\n return errors;\n });\n }\n}\nexport class StopMarketOrderCreator extends LimitOrderCreator {\n create(values: OrderEntity, _: ValuesDepConfig): OrderEntity {\n const result = {\n ...this.baseOrder(values),\n // order_price: values.order_price,\n trigger_price: values.trigger_price,\n algo_type: \"STOP\",\n type: \"MARKET\",\n quantity: values[\"order_quantity\"],\n // price: values[\"order_price\"],\n trigger_price_type: \"MARK_PRICE\",\n };\n delete result[\"order_quantity\"];\n delete result[\"order_price\"];\n // @ts-ignore\n delete result[\"order_type\"];\n // @ts-ignore\n delete result[\"isStopOrder\"];\n delete result['total'];\n\n console.log(\"result is\", result);\n return result;\n }\n validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, config).then((errors) => {\n // const errors = this.baseValidate(values, config);\n // @ts-ignore\n const { order_price, trigger_price, side } = values;\n\n if (!trigger_price) {\n errors.trigger_price = {\n type: \"required\",\n message: \"Trigger price is required\",\n };\n }\n\n return errors;\n });\n }\n}\n\nexport class GeneralOrderCreator extends BaseOrderCreator {\n create(data: OrderEntity): OrderEntity {\n return {\n ...this.baseOrder(data),\n order_price: data.order_price,\n order_quantity: data.order_quantity,\n };\n }\n validate(\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ): Promise<VerifyResult> {\n return super.baseValidate(values, configs);\n }\n}\n\nexport const availableOrderTypes = [\n OrderType.LIMIT,\n OrderType.MARKET,\n OrderType.IOC,\n OrderType.FOK,\n OrderType.POST_ONLY,\n OrderType.STOP_LIMIT,\n OrderType.STOP_MARKET,\n];\n\nexport class OrderFactory {\n static create(type: OrderType): OrderCreator | null {\n switch (type) {\n case OrderType.LIMIT:\n return new LimitOrderCreator();\n case OrderType.MARKET:\n return new MarketOrderCreator();\n // case OrderType.ASK:\n // return new AskOrderCreator();\n // case OrderType.BID:\n // return new BidOrderCreator();\n case OrderType.IOC:\n return new IOCOrderCreator();\n case OrderType.FOK:\n return new FOKOrderCreator();\n case OrderType.POST_ONLY:\n return new PostOnlyOrderCreator();\n\n case OrderType.STOP_LIMIT:\n return new StopLimitOrderCreator();\n case OrderType.STOP_MARKET:\n return new StopMarketOrderCreator();\n\n default:\n return new GeneralOrderCreator();\n }\n }\n}\n"],"names":["BaseOrderCreator","FOKOrderCreator","GeneralOrderCreator","IOCOrderCreator","LimitOrderCreator","MarketOrderCreator","OrderFactory","PostOnlyOrderCreator","StopLimitOrderCreator","StopMarketOrderCreator","availableOrderTypes","checkNotional","maxPrice","minPrice","scropePrice","order","baseOrder","data","symbol","order_type","OrderType","LIMIT","order_type_ext","side","reduce_only","order_quantity","total","visible_quantity","baseValidate","values","configs","errors","maxQty","order_price","min_notional","quote_dp","totalNumber","Decimal","qty","dividedBy","toFixed","type","message","base_min","base_dp","lt","todp","gt","quote_max","quote_min","notionalHintStr","undefined","Promise","resolve","fixOrderQuantity","config","div","toDecimalPlaces","toNumber","price","minNotional","calcNotional","mul","notional","Number","parseFloat","str","e","create","toString","ROUND_DOWN","validate","then","price_range","price_scope","maxPriceNumber","markPrice","minPriceNumber","scropePriceNumbere","priceRange","min","max","trigger_price","algo_type","quantity","trigger_price_type","_","result","MARKET","IOC","FOK","POST_ONLY","STOP_LIMIT","STOP_MARKET"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/utils/createOrder.ts"],"sourcesContent":["import { Decimal } from \"@orderly.network/utils\";\n\nexport function checkNotional(\n price?: string | number,\n qty?: string | number,\n minNotional?: number\n): string | undefined {\n if (price !== undefined && qty !== undefined && minNotional !== undefined) {\n try {\n const calcNotional = new Decimal(price).mul(new Decimal(qty)).toNumber();\n const notional = Number.parseFloat(`${minNotional}`);\n\n const str =\n calcNotional < notional\n ? `The order value should be greater or equal to ${minNotional} USDC`\n : undefined;\n return str;\n } catch (e) {\n return undefined;\n }\n }\n\n return undefined;\n}\n"],"names":["checkNotional","price","qty","minNotional","undefined","calcNotional","Decimal","mul","toNumber","notional","Number","parseFloat","str","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAEgBA;;;eAAAA;;;uBAFQ;AAEjB,SAASA,cACdC,KAAuB,EACvBC,GAAqB,EACrBC,WAAoB;IAEpB,IAAIF,UAAUG,aAAaF,QAAQE,aAAaD,gBAAgBC,WAAW;QACzE,IAAI;YACF,MAAMC,eAAe,IAAIC,cAAO,CAACL,OAAOM,GAAG,CAAC,IAAID,cAAO,CAACJ,MAAMM,QAAQ;YACtE,MAAMC,WAAWC,OAAOC,UAAU,CAAC,CAAC,EAAER,YAAY,CAAC;YAEnD,MAAMS,MACJP,eAAeI,WACX,CAAC,8CAA8C,EAAEN,YAAY,KAAK,CAAC,GACnEC;YACN,OAAOQ;QACT,EAAE,OAAOC,GAAG;YACV,OAAOT;QACT;IACF;IAEA,OAAOA;AACT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=fokCreator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fokCreator.d.ts","sourceRoot":"","sources":["../../src/utils/fokCreator.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/fokCreator.ts"],"names":[],"rangeMappings":"","mappings":""}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { findTPSLFromOrder, findTPSLFromOrders, findPositionTPSLFromOrders, } from "../orderly/usePositionStream/utils";
|
|
2
|
+
export { cleanStringStyle } from "./orderEntryHelper";
|
|
3
|
+
export { getPositionBySymbol } from "./swr";
|
|
4
|
+
export { priceToPnl } from "../orderly/useTakeProfitAndStopLoss/utils";
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
cleanStringStyle: function() {
|
|
13
|
+
return _orderEntryHelper.cleanStringStyle;
|
|
14
|
+
},
|
|
15
|
+
findPositionTPSLFromOrders: function() {
|
|
16
|
+
return _utils.findPositionTPSLFromOrders;
|
|
17
|
+
},
|
|
18
|
+
findTPSLFromOrder: function() {
|
|
19
|
+
return _utils.findTPSLFromOrder;
|
|
20
|
+
},
|
|
21
|
+
findTPSLFromOrders: function() {
|
|
22
|
+
return _utils.findTPSLFromOrders;
|
|
23
|
+
},
|
|
24
|
+
getPositionBySymbol: function() {
|
|
25
|
+
return _swr.getPositionBySymbol;
|
|
26
|
+
},
|
|
27
|
+
priceToPnl: function() {
|
|
28
|
+
return _utils1.priceToPnl;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
const _utils = require("../orderly/usePositionStream/utils");
|
|
32
|
+
const _orderEntryHelper = require("./orderEntryHelper");
|
|
33
|
+
const _swr = require("./swr");
|
|
34
|
+
const _utils1 = require("../orderly/useTakeProfitAndStopLoss/utils");
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export {\n findTPSLFromOrder,\n findTPSLFromOrders,\n findPositionTPSLFromOrders,\n} from \"../orderly/usePositionStream/utils\";\n\nexport { cleanStringStyle } from \"./orderEntryHelper\";\n\nexport { getPositionBySymbol } from \"./swr\";\n\nexport { priceToPnl } from \"../orderly/useTakeProfitAndStopLoss/utils\";\n"],"names":["cleanStringStyle","findPositionTPSLFromOrders","findTPSLFromOrder","findTPSLFromOrders","getPositionBySymbol","priceToPnl"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAMSA,gBAAgB;eAAhBA,kCAAgB;;IAHvBC,0BAA0B;eAA1BA,iCAA0B;;IAF1BC,iBAAiB;eAAjBA,wBAAiB;;IACjBC,kBAAkB;eAAlBA,yBAAkB;;IAMXC,mBAAmB;eAAnBA,wBAAmB;;IAEnBC,UAAU;eAAVA,kBAAU;;;uBANZ;kCAE0B;qBAEG;wBAET"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../src/utils/order.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/order.ts"],"names":[],"rangeMappings":"","mappings":""}
|
package/lib/utils/swr.d.ts
CHANGED
|
@@ -6,5 +6,7 @@ export declare const generateKeyFun: (args: {
|
|
|
6
6
|
side?: string;
|
|
7
7
|
size?: number;
|
|
8
8
|
}) => (pageIndex: number, previousPageData: any) => string | null;
|
|
9
|
-
export declare const updateOrdersHandler: (key: string, updatedOrder: WSMessage.
|
|
9
|
+
export declare const updateOrdersHandler: (key: string, updatedOrder: WSMessage.Order, orders?: API.OrderResponse[]) => API.OrderResponse[] | undefined;
|
|
10
|
+
export declare function updateAlgoOrdersHandler(key: string, message: WSMessage.AlgoOrder[], orders: API.OrderResponse[]): API.OrderResponse[] | undefined;
|
|
11
|
+
export declare function getPositionBySymbol(symbol: string): void;
|
|
10
12
|
//# sourceMappingURL=swr.d.ts.map
|
package/lib/utils/swr.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swr.d.ts","sourceRoot":"","sources":["../../src/utils/swr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"swr.d.ts","sourceRoot":"","sources":["../../src/utils/swr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAOnD,eAAO,MAAM,cAAc,SAClB;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,iBAC7D,MAAM,oBAAoB,GAAG,KAAG,MAAM,GAAG,IAyBpD,CAAC;AAEJ,eAAO,MAAM,mBAAmB,QACzB,MAAM,gBACG,UAAU,KAAK,WAEpB,IAAI,aAAa,EAAE,oCAsI7B,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,EAC9B,MAAM,EAAE,GAAG,CAAC,aAAa,EAAE,mCAW5B;AAuGD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,QAGjD"}
|
package/lib/utils/swr.js
CHANGED
|
@@ -12,12 +12,19 @@ _export(exports, {
|
|
|
12
12
|
generateKeyFun: function() {
|
|
13
13
|
return generateKeyFun;
|
|
14
14
|
},
|
|
15
|
+
getPositionBySymbol: function() {
|
|
16
|
+
return getPositionBySymbol;
|
|
17
|
+
},
|
|
18
|
+
updateAlgoOrdersHandler: function() {
|
|
19
|
+
return updateAlgoOrdersHandler;
|
|
20
|
+
},
|
|
15
21
|
updateOrdersHandler: function() {
|
|
16
22
|
return updateOrdersHandler;
|
|
17
23
|
}
|
|
18
24
|
});
|
|
19
|
-
const _utils = require("@orderly.network/utils");
|
|
20
25
|
const _ramda = require("ramda");
|
|
26
|
+
const _algoOrderMergeHandler = require("../services/orderMerge/algoOrderMergeHandler");
|
|
27
|
+
const _regularOrderMergeHandler = require("../services/orderMerge/regularOrderMergeHandler");
|
|
21
28
|
const generateKeyFun = (args)=>(pageIndex, previousPageData)=>{
|
|
22
29
|
// reached the end
|
|
23
30
|
if (previousPageData && !previousPageData.rows?.length) return null;
|
|
@@ -47,93 +54,127 @@ const generateKeyFun = (args)=>(pageIndex, previousPageData)=>{
|
|
|
47
54
|
}
|
|
48
55
|
return `/v1/orders?${search.toString()}`;
|
|
49
56
|
};
|
|
50
|
-
const updateOrdersHandler = (key, updatedOrder,
|
|
57
|
+
const updateOrdersHandler = (key, updatedOrder, // isAlgoOrder:boolean,
|
|
58
|
+
orders)=>{
|
|
51
59
|
if (!orders) {
|
|
52
60
|
return;
|
|
53
61
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
62
|
+
const handler = new _regularOrderMergeHandler.RegularOrderMergeHandler(updatedOrder);
|
|
63
|
+
return handler.merge(key, updatedOrder, orders);
|
|
64
|
+
// console.log(key);
|
|
65
|
+
// const isAlgoOrder = "algoOrderId" in updatedOrder;
|
|
66
|
+
// // if (isAlgoOrder) {
|
|
67
|
+
// // mergeHandler = new AlgoOrderMergeHandler();
|
|
68
|
+
// // } else {
|
|
69
|
+
// // mergeHandler = new RegularOrderMergeHandler();
|
|
70
|
+
// // }
|
|
71
|
+
// const underscoreOrder = object2underscore(updatedOrder);
|
|
72
|
+
// let formattedOrder: API.Order & API.AlgoOrder = {
|
|
73
|
+
// ...underscoreOrder,
|
|
74
|
+
// updated_time: updatedOrder.timestamp,
|
|
75
|
+
// type: updatedOrder.type?.replace("_ORDER", ""),
|
|
76
|
+
// //@ts-ignore
|
|
77
|
+
// // visible_quantity: updatedOrder.visibleQuantity || updatedOrder.visible,
|
|
78
|
+
// };
|
|
79
|
+
// if (typeof formattedOrder.visible_quantity === "undefined") {
|
|
80
|
+
// // check visible field;
|
|
81
|
+
// // @ts-ignore
|
|
82
|
+
// formattedOrder.visible_quantity = updatedOrder.visible;
|
|
83
|
+
// }
|
|
84
|
+
// // console.log(formattedOrder, updatedOrder);
|
|
85
|
+
// const hasCreateTime = "created_time" in formattedOrder;
|
|
86
|
+
// if (!hasCreateTime) {
|
|
87
|
+
// formattedOrder["created_time"] = updatedOrder.timestamp;
|
|
88
|
+
// }
|
|
89
|
+
// if (isAlgoOrder) {
|
|
90
|
+
// if (typeof updatedOrder.triggerTradePrice !== "undefined") {
|
|
91
|
+
// formattedOrder.trigger_price = updatedOrder.triggerTradePrice;
|
|
92
|
+
// }
|
|
93
|
+
// if (formattedOrder.type === "MARKET") {
|
|
94
|
+
// const { price, ...newObj } = formattedOrder;
|
|
95
|
+
// // @ts-ignore
|
|
96
|
+
// formattedOrder = newObj;
|
|
97
|
+
// }
|
|
98
|
+
// } else {
|
|
99
|
+
// // formattedOrder.created_time = updatedOrder.timestamp;
|
|
100
|
+
// }
|
|
101
|
+
// // const index = lensIndex(0);
|
|
102
|
+
// const orderId =
|
|
103
|
+
// (updatedOrder as WSMessage.Order).orderId ||
|
|
104
|
+
// (updatedOrder as WSMessage.AlgoOrder).algoOrderId;
|
|
105
|
+
// const isExisting = orderIsExisting(orders, orderId);
|
|
106
|
+
// const status =
|
|
107
|
+
// (updatedOrder as WSMessage.Order).status ||
|
|
108
|
+
// (updatedOrder as WSMessage.AlgoOrder).rootAlgoStatus;
|
|
109
|
+
// switch (status) {
|
|
110
|
+
// case "NEW": {
|
|
111
|
+
// // chceck if the order is already in the list
|
|
112
|
+
// if (
|
|
113
|
+
// isExisting ||
|
|
114
|
+
// key.startsWith("orders:CANCELLED") ||
|
|
115
|
+
// key.startsWith("orders:FILLED") ||
|
|
116
|
+
// key.startsWith("orders:REJECTED")
|
|
117
|
+
// ) {
|
|
118
|
+
// return orders;
|
|
119
|
+
// }
|
|
120
|
+
// return insertOrders(orders, formattedOrder);
|
|
121
|
+
// }
|
|
122
|
+
// case "CANCELLED": {
|
|
123
|
+
// if (
|
|
124
|
+
// key.startsWith("orders:FILLED") ||
|
|
125
|
+
// key.startsWith("orders:REJECTED")
|
|
126
|
+
// ) {
|
|
127
|
+
// return orders;
|
|
128
|
+
// }
|
|
129
|
+
// if (key.startsWith("orders:NEW") || key.startsWith("orders:INCOMPLETE")) {
|
|
130
|
+
// return removeOrderIfExisting(orders, orderId);
|
|
131
|
+
// }
|
|
132
|
+
// if (key.startsWith("orders:CANCELLED")) {
|
|
133
|
+
// return insertOrders(orders, formattedOrder);
|
|
134
|
+
// }
|
|
135
|
+
// return updateOrders(orders, formattedOrder);
|
|
136
|
+
// }
|
|
137
|
+
// case "REPLACED":
|
|
138
|
+
// return updateOrders(orders, formattedOrder);
|
|
139
|
+
// case "FILLED": {
|
|
140
|
+
// if (isExisting) {
|
|
141
|
+
// // for new list, remove the order if it exists
|
|
142
|
+
// if (
|
|
143
|
+
// key.startsWith("orders:INCOMPLETE") ||
|
|
144
|
+
// key.startsWith("orders:NEW")
|
|
145
|
+
// ) {
|
|
146
|
+
// // if fullfilled, remove from the list
|
|
147
|
+
// if (updatedOrder.totalExecutedQuantity === updatedOrder.quantity) {
|
|
148
|
+
// return removeOrderIfExisting(orders, orderId);
|
|
149
|
+
// }
|
|
150
|
+
// // update
|
|
151
|
+
// return updateOrders(orders, formattedOrder);
|
|
152
|
+
// }
|
|
153
|
+
// } else {
|
|
154
|
+
// // for filled list, insert the order if it doesn't exist
|
|
155
|
+
// if (
|
|
156
|
+
// key.startsWith("orders:CANCELLED") ||
|
|
157
|
+
// key.startsWith("orders:INCOMPLETE") ||
|
|
158
|
+
// key.startsWith("orders:NEW")
|
|
159
|
+
// ) {
|
|
160
|
+
// return orders;
|
|
161
|
+
// }
|
|
162
|
+
// // if filled/history list:
|
|
163
|
+
// return insertOrders(orders, formattedOrder);
|
|
164
|
+
// }
|
|
165
|
+
// }
|
|
166
|
+
// default:
|
|
167
|
+
// return orders;
|
|
168
|
+
// }
|
|
136
169
|
};
|
|
170
|
+
function updateAlgoOrdersHandler(key, message, orders) {
|
|
171
|
+
if (!orders) {
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
const mergeHandler = new _algoOrderMergeHandler.AlgoOrderMergeHandler(message);
|
|
175
|
+
const result = mergeHandler.merge(key, message, orders);
|
|
176
|
+
return result;
|
|
177
|
+
}
|
|
137
178
|
function updateOrders(orders, formattedOrder) {
|
|
138
179
|
return orders.map((item)=>{
|
|
139
180
|
return {
|
|
@@ -213,11 +254,9 @@ function orderIsExisting(orders, orderId) {
|
|
|
213
254
|
const index = findOrderIndex(orders, orderId);
|
|
214
255
|
return Array.isArray(index);
|
|
215
256
|
}
|
|
216
|
-
function
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
return acc;
|
|
220
|
-
}, {});
|
|
257
|
+
function getPositionBySymbol(symbol) {
|
|
258
|
+
// const config = useSWRConfig();
|
|
259
|
+
// console.log(config);
|
|
221
260
|
}
|
|
222
261
|
|
|
223
262
|
//# sourceMappingURL=swr.js.map
|
package/lib/utils/swr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/swr.ts"],"sourcesContent":["import { API } from \"@orderly.network/types\";\nimport { WSMessage } from \"@orderly.network/types\";\nimport { camelCaseToUnderscoreCase } from \"@orderly.network/utils\";\nimport { is, lensIndex, over, startsWith } from \"ramda\";\n\nexport const generateKeyFun =\n (args: { status?: string; symbol?: string; side?: string; size?: number }) =>\n (pageIndex: number, previousPageData: any): string | null => {\n // reached the end\n if (previousPageData && !previousPageData.rows?.length) return null;\n\n const { status, symbol, side, size = 100 } = args;\n\n const search = new URLSearchParams([\n [\"size\", size.toString()],\n [\"page\", `${pageIndex + 1}`],\n [\"source_type\", \"ALL\"],\n ]);\n\n if (status) {\n search.set(`status`, status);\n }\n\n if (symbol) {\n search.set(`symbol`, symbol);\n }\n\n if (side) {\n search.set(`side`, side);\n }\n\n return `/v1/orders?${search.toString()}`;\n };\n\nexport const updateOrdersHandler = (\n key: string,\n updatedOrder: WSMessage.AlgoOrder | WSMessage.Order,\n orders?: API.OrderResponse[]\n) => {\n if (!orders) {\n return;\n }\n\n // console.log(key);\n const isAlgoOrder = \"algoOrderId\" in updatedOrder;\n\n const underscoreOrder = object2underscore(updatedOrder);\n\n let formattedOrder: API.Order & API.AlgoOrder = {\n ...underscoreOrder,\n updated_time: updatedOrder.timestamp,\n type: typeof underscoreOrder.type ==='string'? updatedOrder.type.replace(\"_ORDER\", \"\"): updatedOrder.type,\n //@ts-ignore\n // visible_quantity: updatedOrder.visibleQuantity || updatedOrder.visible,\n };\n\n if (typeof formattedOrder.visible_quantity === \"undefined\") {\n // check visible field;\n // @ts-ignore\n formattedOrder.visible_quantity = updatedOrder.visible;\n }\n\n // console.log(formattedOrder, updatedOrder);\n\n const hasCreateTime = \"created_time\" in formattedOrder;\n if (!hasCreateTime) {\n formattedOrder[\"created_time\"] = updatedOrder.timestamp;\n }\n\n if (isAlgoOrder) {\n if (typeof updatedOrder.triggerTradePrice !== \"undefined\") {\n formattedOrder.trigger_price = updatedOrder.triggerTradePrice;\n }\n\n if (formattedOrder.type === \"MARKET\") {\n const {price, ...newObj} = formattedOrder;\n // @ts-ignore\n formattedOrder = newObj;\n }\n } else {\n // formattedOrder.created_time = updatedOrder.timestamp;\n }\n\n // const index = lensIndex(0);\n const orderId =\n (updatedOrder as WSMessage.Order).orderId ||\n (updatedOrder as WSMessage.AlgoOrder).algoOrderId;\n\n const isExisting = orderIsExisting(orders, orderId);\n\n const status =\n (updatedOrder as WSMessage.Order).status ||\n (updatedOrder as WSMessage.AlgoOrder).rootAlgoStatus;\n\n switch (status) {\n case \"NEW\": {\n // chceck if the order is already in the list\n if (\n isExisting ||\n key.startsWith(\"orders:CANCELLED\") ||\n key.startsWith(\"orders:FILLED\") ||\n key.startsWith(\"orders:REJECTED\")\n ) {\n return orders;\n }\n return insertOrders(orders, formattedOrder);\n }\n\n case \"CANCELLED\": {\n if (\n key.startsWith(\"orders:FILLED\") ||\n key.startsWith(\"orders:REJECTED\")\n ) {\n return orders;\n }\n if (key.startsWith(\"orders:NEW\") || key.startsWith(\"orders:INCOMPLETE\")) {\n return removeOrderIfExisting(orders, orderId);\n }\n\n if (key.startsWith(\"orders:CANCELLED\")) {\n return insertOrders(orders, formattedOrder);\n }\n\n return updateOrders(orders, formattedOrder);\n }\n\n case \"REPLACED\":\n return updateOrders(orders, formattedOrder);\n\n case \"FILLED\": {\n if (isExisting) {\n // for new list, remove the order if it exists\n if (\n key.startsWith(\"orders:INCOMPLETE\") ||\n key.startsWith(\"orders:NEW\")\n ) {\n // if fullfilled, remove from the list\n if (updatedOrder.totalExecutedQuantity === updatedOrder.quantity) {\n return removeOrderIfExisting(orders, orderId);\n }\n\n // update\n return updateOrders(orders, formattedOrder);\n }\n } else {\n // for filled list, insert the order if it doesn't exist\n\n if (\n key.startsWith(\"orders:CANCELLED\") ||\n key.startsWith(\"orders:INCOMPLETE\") ||\n key.startsWith(\"orders:NEW\")\n ) {\n return orders;\n }\n // if filled/history list:\n return insertOrders(orders, formattedOrder);\n }\n }\n\n default:\n return orders;\n }\n};\n\nfunction updateOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n return orders.map((item) => {\n return {\n // ...item,\n meta: item.meta,\n rows: item.rows.map((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n\n if (\n isAlgoOrder &&\n formattedOrder?.algo_order_id === order?.algo_order_id\n ) {\n return { ...order, ...formattedOrder };\n }\n\n if (!isAlgoOrder && formattedOrder?.order_id === order?.order_id) {\n return { ...order, ...formattedOrder };\n }\n\n return order;\n }),\n };\n });\n}\n\nfunction insertOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n const index = lensIndex(0);\n return over(\n index,\n (item: any) => ({\n meta: {\n ...item.meta,\n total: item.meta.total + 1,\n },\n rows: [formattedOrder, ...item.rows],\n }),\n orders\n );\n}\n\nfunction removeOrderIfExisting(\n orders: API.OrderResponse[],\n orderId: number\n): API.OrderResponse[] {\n const isExisting = orderIsExisting(orders, orderId);\n if (!isExisting) return orders;\n return orders.map((item) => {\n return {\n meta: { ...item.meta, total: item.meta.total - 1 },\n rows: item.rows.filter((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n return isAlgoOrder\n ? (order as API.AlgoOrder).algo_order_id !== orderId\n : (order as API.Order).order_id !== orderId;\n }),\n };\n });\n}\n\nfunction findOrderIndex(\n orders: API.OrderResponse[],\n orderId: number\n): number[] | undefined {\n let index: number = 0;\n let index2: number | undefined;\n\n for (let idx = 0; idx < orders.length; idx++) {\n index = idx;\n const item = orders[idx];\n\n for (let idx2 = 0; idx2 < item.rows.length; idx2++) {\n const element = item.rows[idx2];\n if (\n (element as API.AlgoOrder).algo_order_id === orderId ||\n (element as API.Order).order_id === orderId\n ) {\n index2 = idx2;\n\n break;\n }\n }\n }\n\n if (typeof index2 === \"undefined\") {\n return;\n }\n\n return [index, index2];\n}\n\nfunction orderIsExisting(orders: API.OrderResponse[], orderId: number) {\n const index = findOrderIndex(orders, orderId);\n return Array.isArray(index);\n}\n\nfunction object2underscore(obj: any) {\n return Object.keys(obj).reduce((acc, key) => {\n acc[camelCaseToUnderscoreCase(key)] = obj[key];\n return acc;\n }, {} as any);\n}\n"],"names":["generateKeyFun","updateOrdersHandler","args","pageIndex","previousPageData","rows","length","status","symbol","side","size","search","URLSearchParams","toString","set","key","updatedOrder","orders","isAlgoOrder","underscoreOrder","object2underscore","formattedOrder","updated_time","timestamp","type","replace","visible_quantity","visible","hasCreateTime","triggerTradePrice","trigger_price","price","newObj","orderId","algoOrderId","isExisting","orderIsExisting","rootAlgoStatus","startsWith","insertOrders","removeOrderIfExisting","updateOrders","totalExecutedQuantity","quantity","map","item","meta","order","algo_order_id","order_id","index","lensIndex","over","total","filter","findOrderIndex","index2","idx","idx2","element","Array","isArray","obj","Object","keys","reduce","acc","camelCaseToUnderscoreCase"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/utils/swr.ts"],"sourcesContent":["import { API } from \"@orderly.network/types\";\nimport { WSMessage } from \"@orderly.network/types\";\nimport { is, lensIndex, over, startsWith } from \"ramda\";\nimport { AlgoOrderMergeHandler } from \"../services/orderMerge/algoOrderMergeHandler\";\nimport { RegularOrderMergeHandler } from \"../services/orderMerge/regularOrderMergeHandler\";\n\n// import { useSWRConfig, unstable_serialize } from \"swr\";\n\nexport const generateKeyFun =\n (args: { status?: string; symbol?: string; side?: string; size?: number }) =>\n (pageIndex: number, previousPageData: any): string | null => {\n // reached the end\n if (previousPageData && !previousPageData.rows?.length) return null;\n\n const { status, symbol, side, size = 100 } = args;\n\n const search = new URLSearchParams([\n [\"size\", size.toString()],\n [\"page\", `${pageIndex + 1}`],\n [\"source_type\", \"ALL\"],\n ]);\n\n if (status) {\n search.set(`status`, status);\n }\n\n if (symbol) {\n search.set(`symbol`, symbol);\n }\n\n if (side) {\n search.set(`side`, side);\n }\n\n return `/v1/orders?${search.toString()}`;\n };\n\nexport const updateOrdersHandler = (\n key: string,\n updatedOrder: WSMessage.Order,\n // isAlgoOrder:boolean,\n orders?: API.OrderResponse[]\n) => {\n if (!orders) {\n return;\n }\n const handler = new RegularOrderMergeHandler(updatedOrder);\n\n return handler.merge(key, updatedOrder, orders);\n\n // console.log(key);\n // const isAlgoOrder = \"algoOrderId\" in updatedOrder;\n\n // // if (isAlgoOrder) {\n // // mergeHandler = new AlgoOrderMergeHandler();\n // // } else {\n // // mergeHandler = new RegularOrderMergeHandler();\n // // }\n\n // const underscoreOrder = object2underscore(updatedOrder);\n\n // let formattedOrder: API.Order & API.AlgoOrder = {\n // ...underscoreOrder,\n // updated_time: updatedOrder.timestamp,\n // type: updatedOrder.type?.replace(\"_ORDER\", \"\"),\n // //@ts-ignore\n // // visible_quantity: updatedOrder.visibleQuantity || updatedOrder.visible,\n // };\n\n // if (typeof formattedOrder.visible_quantity === \"undefined\") {\n // // check visible field;\n // // @ts-ignore\n // formattedOrder.visible_quantity = updatedOrder.visible;\n // }\n\n // // console.log(formattedOrder, updatedOrder);\n\n // const hasCreateTime = \"created_time\" in formattedOrder;\n // if (!hasCreateTime) {\n // formattedOrder[\"created_time\"] = updatedOrder.timestamp;\n // }\n\n // if (isAlgoOrder) {\n // if (typeof updatedOrder.triggerTradePrice !== \"undefined\") {\n // formattedOrder.trigger_price = updatedOrder.triggerTradePrice;\n // }\n\n // if (formattedOrder.type === \"MARKET\") {\n // const { price, ...newObj } = formattedOrder;\n // // @ts-ignore\n // formattedOrder = newObj;\n // }\n // } else {\n // // formattedOrder.created_time = updatedOrder.timestamp;\n // }\n\n // // const index = lensIndex(0);\n // const orderId =\n // (updatedOrder as WSMessage.Order).orderId ||\n // (updatedOrder as WSMessage.AlgoOrder).algoOrderId;\n\n // const isExisting = orderIsExisting(orders, orderId);\n\n // const status =\n // (updatedOrder as WSMessage.Order).status ||\n // (updatedOrder as WSMessage.AlgoOrder).rootAlgoStatus;\n\n // switch (status) {\n // case \"NEW\": {\n // // chceck if the order is already in the list\n // if (\n // isExisting ||\n // key.startsWith(\"orders:CANCELLED\") ||\n // key.startsWith(\"orders:FILLED\") ||\n // key.startsWith(\"orders:REJECTED\")\n // ) {\n // return orders;\n // }\n // return insertOrders(orders, formattedOrder);\n // }\n\n // case \"CANCELLED\": {\n // if (\n // key.startsWith(\"orders:FILLED\") ||\n // key.startsWith(\"orders:REJECTED\")\n // ) {\n // return orders;\n // }\n // if (key.startsWith(\"orders:NEW\") || key.startsWith(\"orders:INCOMPLETE\")) {\n // return removeOrderIfExisting(orders, orderId);\n // }\n\n // if (key.startsWith(\"orders:CANCELLED\")) {\n // return insertOrders(orders, formattedOrder);\n // }\n\n // return updateOrders(orders, formattedOrder);\n // }\n\n // case \"REPLACED\":\n // return updateOrders(orders, formattedOrder);\n\n // case \"FILLED\": {\n // if (isExisting) {\n // // for new list, remove the order if it exists\n // if (\n // key.startsWith(\"orders:INCOMPLETE\") ||\n // key.startsWith(\"orders:NEW\")\n // ) {\n // // if fullfilled, remove from the list\n // if (updatedOrder.totalExecutedQuantity === updatedOrder.quantity) {\n // return removeOrderIfExisting(orders, orderId);\n // }\n\n // // update\n // return updateOrders(orders, formattedOrder);\n // }\n // } else {\n // // for filled list, insert the order if it doesn't exist\n\n // if (\n // key.startsWith(\"orders:CANCELLED\") ||\n // key.startsWith(\"orders:INCOMPLETE\") ||\n // key.startsWith(\"orders:NEW\")\n // ) {\n // return orders;\n // }\n // // if filled/history list:\n // return insertOrders(orders, formattedOrder);\n // }\n // }\n\n // default:\n // return orders;\n // }\n};\n\nexport function updateAlgoOrdersHandler(\n key: string,\n message: WSMessage.AlgoOrder[],\n orders: API.OrderResponse[]\n) {\n if (!orders) {\n return;\n }\n\n const mergeHandler = new AlgoOrderMergeHandler(message);\n\n const result = mergeHandler.merge(key, message, orders);\n\n return result;\n}\n\nfunction updateOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n return orders.map((item) => {\n return {\n // ...item,\n meta: item.meta,\n rows: item.rows.map((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n\n if (\n isAlgoOrder &&\n formattedOrder?.algo_order_id === order?.algo_order_id\n ) {\n return { ...order, ...formattedOrder };\n }\n\n if (!isAlgoOrder && formattedOrder?.order_id === order?.order_id) {\n return { ...order, ...formattedOrder };\n }\n\n return order;\n }),\n };\n });\n}\n\nfunction insertOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n const index = lensIndex(0);\n return over(\n index,\n (item: any) => ({\n meta: {\n ...item.meta,\n total: item.meta.total + 1,\n },\n rows: [formattedOrder, ...item.rows],\n }),\n orders\n );\n}\n\nfunction removeOrderIfExisting(\n orders: API.OrderResponse[],\n orderId: number\n): API.OrderResponse[] {\n const isExisting = orderIsExisting(orders, orderId);\n if (!isExisting) return orders;\n return orders.map((item) => {\n return {\n meta: { ...item.meta, total: item.meta.total - 1 },\n rows: item.rows.filter((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n return isAlgoOrder\n ? (order as API.AlgoOrder).algo_order_id !== orderId\n : (order as API.Order).order_id !== orderId;\n }),\n };\n });\n}\n\nfunction findOrderIndex(\n orders: API.OrderResponse[],\n orderId: number\n): number[] | undefined {\n let index: number = 0;\n let index2: number | undefined;\n\n for (let idx = 0; idx < orders.length; idx++) {\n index = idx;\n const item = orders[idx];\n\n for (let idx2 = 0; idx2 < item.rows.length; idx2++) {\n const element = item.rows[idx2];\n if (\n (element as API.AlgoOrder).algo_order_id === orderId ||\n (element as API.Order).order_id === orderId\n ) {\n index2 = idx2;\n\n break;\n }\n }\n }\n\n if (typeof index2 === \"undefined\") {\n return;\n }\n\n return [index, index2];\n}\n\nfunction orderIsExisting(orders: API.OrderResponse[], orderId: number) {\n const index = findOrderIndex(orders, orderId);\n return Array.isArray(index);\n}\n\nexport function getPositionBySymbol(symbol: string) {\n // const config = useSWRConfig();\n // console.log(config);\n}\n"],"names":["generateKeyFun","getPositionBySymbol","updateAlgoOrdersHandler","updateOrdersHandler","args","pageIndex","previousPageData","rows","length","status","symbol","side","size","search","URLSearchParams","toString","set","key","updatedOrder","orders","handler","RegularOrderMergeHandler","merge","message","mergeHandler","AlgoOrderMergeHandler","result","updateOrders","formattedOrder","map","item","meta","order","isAlgoOrder","algo_order_id","order_id","insertOrders","index","lensIndex","over","total","removeOrderIfExisting","orderId","isExisting","orderIsExisting","filter","findOrderIndex","index2","idx","idx2","element","Array","isArray"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/utils/ws.ts"],"names":[],"mappings":"AAEA,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,OAKzC"}
|
package/lib/utils/ws.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "object2underscore", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return object2underscore;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _utils = require("@orderly.network/utils");
|
|
12
|
+
function object2underscore(obj) {
|
|
13
|
+
return Object.keys(obj).reduce((acc, key)=>{
|
|
14
|
+
acc[(0, _utils.camelCaseToUnderscoreCase)(key)] = obj[key];
|
|
15
|
+
return acc;
|
|
16
|
+
}, {});
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=ws.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/ws.ts"],"sourcesContent":["import { camelCaseToUnderscoreCase } from \"@orderly.network/utils\";\n\nexport function object2underscore(obj: any) {\n return Object.keys(obj).reduce((acc, key) => {\n acc[camelCaseToUnderscoreCase(key)] = obj[key];\n return acc;\n }, {} as any);\n}\n"],"names":["object2underscore","obj","Object","keys","reduce","acc","key","camelCaseToUnderscoreCase"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":";;;;+BAEgBA;;;eAAAA;;;uBAF0B;AAEnC,SAASA,kBAAkBC,GAAQ;IACxC,OAAOC,OAAOC,IAAI,CAACF,KAAKG,MAAM,CAAC,CAACC,KAAKC;QACnCD,GAAG,CAACE,IAAAA,gCAAyB,EAACD,KAAK,GAAGL,GAAG,CAACK,IAAI;QAC9C,OAAOD;IACT,GAAG,CAAC;AACN"}
|
package/lib/version.d.ts
CHANGED
package/lib/version.js
CHANGED
|
@@ -10,8 +10,8 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
if (typeof window !== 'undefined') {
|
|
12
12
|
window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};
|
|
13
|
-
window.__ORDERLY_VERSION__["@orderly.network/hooks"] = "1.
|
|
13
|
+
window.__ORDERLY_VERSION__["@orderly.network/hooks"] = "1.4.0-alpha.0";
|
|
14
14
|
}
|
|
15
|
-
const _default = "1.
|
|
15
|
+
const _default = "1.4.0-alpha.0";
|
|
16
16
|
|
|
17
17
|
//# sourceMappingURL=version.js.map
|
package/lib/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/version.ts"],"sourcesContent":["\ndeclare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif(typeof window !== 'undefined') {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@orderly.network/hooks\"] = \"1.
|
|
1
|
+
{"version":3,"sources":["../src/version.ts"],"sourcesContent":["\ndeclare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif(typeof window !== 'undefined') {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@orderly.network/hooks\"] = \"1.4.0-alpha.0\";\n};\n\nexport default \"1.4.0-alpha.0\";\n"],"names":["window","__ORDERLY_VERSION__"],"rangeMappings":";;;;;;;;;;;;;;","mappings":";;;;+BAaA;;;eAAA;;;AALA,IAAG,OAAOA,WAAW,aAAa;IAC9BA,OAAOC,mBAAmB,GAAGD,OAAOC,mBAAmB,IAAI,CAAC;IAC5DD,OAAOC,mBAAmB,CAAC,yBAAyB,GAAG;AAC3D;MAEA,WAAe"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@orderly.network/hooks",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0-alpha.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "esm/index.js",
|
|
@@ -15,33 +15,35 @@
|
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
17
|
"@babel/preset-env": "^7.22.9",
|
|
18
|
+
"@babel/preset-react": "^7.22.5",
|
|
18
19
|
"@babel/preset-typescript": "^7.22.5",
|
|
19
20
|
"@swc/cli": "^0.3.12",
|
|
20
21
|
"@swc/core": "^1.4.12",
|
|
21
22
|
"@swc/plugin-remove-console": "^1.5.121",
|
|
22
23
|
"@testing-library/react-hooks": "^8.0.1",
|
|
24
|
+
"@testing-library/react": "^14.2.1",
|
|
23
25
|
"@types/jest": "^29.5.3",
|
|
24
26
|
"@types/ramda": "^0.29.3",
|
|
25
27
|
"@types/react": "^18.2.38",
|
|
28
|
+
"babel-jest": "^29.6.1",
|
|
26
29
|
"jest": "^29.6.1",
|
|
27
|
-
"react": "^18.2.0",
|
|
28
30
|
"react-test-renderer": "^18.2.0",
|
|
29
31
|
"rimraf": "^5.0.5",
|
|
30
32
|
"tsup": "^7.1.0",
|
|
31
33
|
"typedoc": "^0.24.8",
|
|
32
34
|
"typescript": "^5.1.6",
|
|
33
|
-
"tsconfig": "0.2.
|
|
35
|
+
"tsconfig": "0.2.2"
|
|
34
36
|
},
|
|
35
37
|
"dependencies": {
|
|
36
38
|
"ramda": "^0.29.0",
|
|
37
39
|
"swr": "^2.2.4",
|
|
38
40
|
"use-constant": "^1.1.1",
|
|
39
41
|
"use-debounce": "^9.0.4",
|
|
40
|
-
"@orderly.network/core": "1.
|
|
41
|
-
"@orderly.network/net": "1.
|
|
42
|
-
"@orderly.network/
|
|
43
|
-
"@orderly.network/
|
|
44
|
-
"@orderly.network/utils": "1.
|
|
42
|
+
"@orderly.network/core": "1.4.0-alpha.0",
|
|
43
|
+
"@orderly.network/net": "1.4.0-alpha.0",
|
|
44
|
+
"@orderly.network/types": "1.4.0-alpha.0",
|
|
45
|
+
"@orderly.network/perp": "3.2.0-alpha.0",
|
|
46
|
+
"@orderly.network/utils": "1.4.0-alpha.0"
|
|
45
47
|
},
|
|
46
48
|
"publishConfig": {
|
|
47
49
|
"access": "public"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useOrderStream.d.ts","sourceRoot":"","sources":["../../src/orderly/useOrderStream.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EACT,WAAW,EACX,WAAW,EAEZ,MAAM,wBAAwB,CAAC;AAUhC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7B,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CAC9B;AAID,KAAK,MAAM,GAAG;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,cAAc,WAIjB,MAAM,YAEJ;IACR;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;;;;;;oCA+GyC,MAAM,SAAS,WAAW;oCA8D1B,MAAM,WAAW,MAAM;wCAvDnB,MAAM,SAAS,WAAW;wCA8D1B,MAAM,WAAW,MAAM;;;;;;;;;;;;;EAkCtE,CAAC"}
|