@velora-dex/widget 0.8.4-dev.0 → 0.8.4
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/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.js +51 -51
- package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/utils.d.ts +3 -3
- package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/utils.js +26 -25
- package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
- package/dist/components/widget/BridgeList/hooks.d.ts +2 -2
- package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -1
- package/dist/components/widget/BridgeList/hooks.js +72 -78
- package/dist/components/widget/BridgeList/hooks.js.map +1 -1
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +2 -2
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -1
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +2 -2
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js +22 -18
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +3 -6
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +54 -58
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/constants.d.ts +1 -1
- package/dist/components/widget/LimitOrderItem/constants.js +1 -1
- package/dist/components/widget/LimitOrderItem/constants.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/types.d.ts +2 -2
- package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/utils.d.ts +4 -2
- package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/utils.js +4 -1
- package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.js +9 -9
- package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js +10 -15
- package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +86 -86
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +2 -2
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js +83 -83
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +1 -4
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
- package/dist/core/LimitOrderButton.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.js +53 -47
- package/dist/core/LimitOrderButton.js.map +1 -1
- package/dist/core/TradeFlowScreenButton.d.ts +4 -3
- package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
- package/dist/core/TradeFlowScreenButton.js.map +1 -1
- package/dist/core/Updaters.js +1 -1
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/across/isCrosschainPossible.d.ts +2 -2
- package/dist/core/across/isCrosschainPossible.d.ts.map +1 -1
- package/dist/core/across/isCrosschainPossible.js.map +1 -1
- package/dist/core/across/utils.d.ts +4 -4
- package/dist/core/across/utils.d.ts.map +1 -1
- package/dist/core/across/utils.js +15 -25
- package/dist/core/across/utils.js.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js +4 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +3 -3
- package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +2 -2
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useWarningMessage.d.ts +2 -2
- package/dist/core/inputs/hooks/useWarningMessage.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -1
- package/dist/core/inputs/hooks/utils.d.ts.map +1 -1
- package/dist/core/inputs/hooks/utils.js +5 -7
- package/dist/core/inputs/hooks/utils.js.map +1 -1
- package/dist/core/inputs/state/guards.d.ts +3 -0
- package/dist/core/inputs/state/guards.d.ts.map +1 -0
- package/dist/core/inputs/state/guards.js +12 -0
- package/dist/core/inputs/state/guards.js.map +1 -0
- package/dist/core/inputs/state/inputAmountAtom.d.ts +2 -2
- package/dist/core/inputs/state/inputAmountAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/inputAmountAtom.js +8 -7
- package/dist/core/inputs/state/inputAmountAtom.js.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/limit/state/limitInputAmountAtom.d.ts +2 -2
- package/dist/core/limit/state/limitInputAmountAtom.d.ts.map +1 -1
- package/dist/core/limit/state/limitInputAmountAtom.js +14 -13
- package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
- package/dist/core/limit/state/utils.d.ts +1 -1
- package/dist/core/limit/useLimitRate.d.ts +3 -2
- package/dist/core/limit/useLimitRate.d.ts.map +1 -1
- package/dist/core/limit/useLimitRate.js +110 -54
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.js +4 -1
- package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
- package/dist/core/otc/state/otcInputAmountAtom.d.ts +2 -2
- package/dist/core/otc/state/otcInputAmountAtom.d.ts.map +1 -1
- package/dist/core/otc/state/otcInputAmountAtom.js +14 -13
- package/dist/core/otc/state/otcInputAmountAtom.js.map +1 -1
- package/dist/core/state/configAtom.js +2 -2
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/configEffectAtom.js +1 -1
- package/dist/core/state/configEffectAtom.js.map +1 -1
- package/dist/core/state/getSelectableDestChains.d.ts +2 -2
- package/dist/core/state/getSelectableDestChains.d.ts.map +1 -1
- package/dist/core/state/getSelectableDestChains.js.map +1 -1
- package/dist/core/swapDetails/fees.d.ts.map +1 -1
- package/dist/core/swapDetails/fees.js +11 -16
- package/dist/core/swapDetails/fees.js.map +1 -1
- package/dist/core/swapDetails/maxToPay.d.ts.map +1 -1
- package/dist/core/swapDetails/maxToPay.js +17 -18
- package/dist/core/swapDetails/maxToPay.js.map +1 -1
- package/dist/core/twap/state/twapInputAmountAtom.d.ts +2 -2
- package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +1 -1
- package/dist/core/twap/state/twapInputAmountAtom.js +10 -9
- package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -1
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +2 -2
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -1
- package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -1
- package/dist/core/twap/useTwapTokenFromInputProps.js +3 -3
- package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -1
- package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
- package/dist/events/types/cancelOrder.d.ts +2 -2
- package/dist/events/types/cancelOrder.d.ts.map +1 -1
- package/dist/events/types/priceChange.d.ts +2 -2
- package/dist/events/types/priceChange.d.ts.map +1 -1
- package/dist/events/types/swap.d.ts +3 -3
- package/dist/events/types/swap.d.ts.map +1 -1
- package/dist/events/types/twap.d.ts +2 -2
- package/dist/events/types/twap.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/const.d.ts +8 -0
- package/dist/hooks/swap/prices/delta/bridge/const.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/bridge/const.js +13 -0
- package/dist/hooks/swap/prices/delta/bridge/const.js.map +1 -0
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +4 -3
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +3 -6
- package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/utils.js +17 -20
- package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +6 -6
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +28 -27
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts +3 -3
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js +3 -3
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js +84 -85
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +4 -4
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js +28 -27
- package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +6 -5
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.js +5 -5
- package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts +28 -8
- package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +42 -31
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +18 -18
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts +49 -19
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +58 -23
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts +2 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/{bridgeRoutes/bridgeRoutesLoadedAtom.js → bridgeInfo/bridgeInfosLoadedAtom.js} +4 -4
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts +6 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js +9 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts +4 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js +11 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +19 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +3 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/{bridgeRoutes/useBridgeRoutes.js → bridgeInfo/useBridgeInfo.js} +6 -6
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/{useDeltaOrderRequiredBalance.d.ts → useDeltaLimitOrderRequiredBalance.d.ts} +10 -10
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/{useDeltaOrderRequiredBalance.js → useDeltaLimitOrderRequiredBalance.js} +5 -5
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +6 -6
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +36 -19
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +5 -5
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js +1 -1
- package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +22 -14
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +62 -71
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/factory.d.ts.map +1 -1
- package/dist/hooks/swap/prices/factory.js +1 -1
- package/dist/hooks/swap/prices/factory.js.map +1 -1
- package/dist/hooks/swap/prices/types.d.ts +3 -2
- package/dist/hooks/swap/prices/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -3
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +111 -108
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +3 -3
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +2 -2
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -1
- package/dist/hooks/swap/prices/useTwapPrices.d.ts +5 -4
- package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTwapPrices.js +73 -70
- package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +19 -12
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +6 -6
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts +4 -4
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +1 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js +1 -1
- package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -5
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +227 -222
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -2
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +196 -159
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +5 -5
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js +233 -221
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
- package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
- package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +2 -2
- package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.d.ts +2 -2
- package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.js +10 -7
- package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
- package/dist/hooks/useAvailableCrosses.d.ts +3 -3
- package/dist/hooks/useAvailableCrosses.d.ts.map +1 -1
- package/dist/hooks/useAvailableCrosses.js +17 -18
- package/dist/hooks/useAvailableCrosses.js.map +1 -1
- package/dist/hooks/useBridgeInfo.d.ts +7 -0
- package/dist/hooks/useBridgeInfo.d.ts.map +1 -0
- package/dist/hooks/{useBridgeRoutes.js → useBridgeInfo.js} +4 -4
- package/dist/hooks/useBridgeInfo.js.map +1 -0
- package/dist/hooks/useIsCrosschainPossible.d.ts +2 -2
- package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
- package/dist/hooks/useIsCrosschainPossible.js +13 -15
- package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
- package/dist/hooks/useSDK.d.ts +11 -11
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js +42 -42
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/hooks/useSelectableDestChains.d.ts +2 -2
- package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
- package/dist/hooks/useSelectableDestChains.js.map +1 -1
- package/dist/lib/queryClient.js +3 -3
- package/dist/lib/queryClient.js.map +1 -1
- package/dist/lib/utils/price.d.ts +2 -5
- package/dist/lib/utils/price.d.ts.map +1 -1
- package/dist/lib/utils/price.js +5 -8
- package/dist/lib/utils/price.js.map +1 -1
- package/dist/lib/utils/toasts.d.ts +3 -3
- package/dist/lib/utils/toasts.d.ts.map +1 -1
- package/dist/lib/utils/toasts.js.map +1 -1
- package/dist/lib/utils/twap.d.ts +4 -19
- package/dist/lib/utils/twap.d.ts.map +1 -1
- package/dist/lib/utils/twap.js +18 -29
- package/dist/lib/utils/twap.js.map +1 -1
- package/package.json +2 -2
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/bridgeRoutesLoadedAtom.d.ts +0 -2
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/bridgeRoutesLoadedAtom.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/bridgeRoutesLoadedAtom.js.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/common.d.ts +0 -6
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/common.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/common.js +0 -9
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/common.js.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/getBridgeRoutesQueryData.d.ts +0 -3
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/getBridgeRoutesQueryData.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/getBridgeRoutesQueryData.js +0 -11
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/getBridgeRoutesQueryData.js.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/types.d.ts +0 -19
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/types.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/useBridgeRoutes.d.ts +0 -3
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/useBridgeRoutes.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeRoutes/useBridgeRoutes.js.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrderRequiredBalance.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrderRequiredBalance.js.map +0 -1
- package/dist/hooks/useBridgeRoutes.d.ts +0 -6
- package/dist/hooks/useBridgeRoutes.d.ts.map +0 -1
- package/dist/hooks/useBridgeRoutes.js.map +0 -1
|
@@ -1,122 +1,113 @@
|
|
|
1
1
|
import { getLogger as e, useLogger as t } from "../../../../../core/logger.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
2
|
+
import { useDeltaSDK as n } from "../../../../useSDK.js";
|
|
3
|
+
import { DeltaOrderStatusChecker as r, isCanceledAuction as i, isExecutedAuction as a, isExpiredAuction as o, isFailedAuction as s } from "../orders/utils.js";
|
|
4
|
+
import { DeltaOrderFailedError as c } from "./errors.js";
|
|
5
|
+
import { c as l } from "react-compiler-runtime";
|
|
6
|
+
import { useLayoutEffect as u, useMemo as d, useRef as f } from "react";
|
|
7
|
+
import { QueryObserver as p, useQuery as m, useQueryClient as h } from "@tanstack/react-query";
|
|
8
|
+
import { assert as g } from "ts-essentials";
|
|
8
9
|
//#region src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts
|
|
9
|
-
var
|
|
10
|
-
"COMPLETED",
|
|
11
|
-
"FAILED",
|
|
12
|
-
"EXPIRED",
|
|
13
|
-
"CANCELLED",
|
|
14
|
-
"REFUNDED"
|
|
15
|
-
]), p = new Set([
|
|
16
|
-
"FAILED",
|
|
17
|
-
"EXPIRED",
|
|
18
|
-
"CANCELLED",
|
|
19
|
-
"REFUNDED"
|
|
20
|
-
]), m = (e) => f.has(e.status), h = (e) => e.status === "COMPLETED", g = (e) => p.has(e.status), _ = "single_delta_auction";
|
|
10
|
+
var _ = "single_delta_auction";
|
|
21
11
|
function v({ orderId: e } = {}) {
|
|
22
12
|
return [_, e];
|
|
23
13
|
}
|
|
24
14
|
var y = 3e3, b = 6e4;
|
|
25
|
-
function x({ orderId: t, enabled: n = !0, refetchInterval:
|
|
26
|
-
let
|
|
15
|
+
function x({ orderId: t, enabled: n = !0, refetchInterval: c = y, select: l, getAuction: u, onUpdatedAuction: d, onAuctionSuccess: f, onAuctionFailure: p }) {
|
|
16
|
+
let m = (e) => "doneState" in e && typeof e.doneState == "boolean";
|
|
27
17
|
return {
|
|
28
18
|
queryKey: v({ orderId: t }),
|
|
29
|
-
queryFn: ({ signal: e }) => (
|
|
19
|
+
queryFn: ({ signal: e }) => (g(t, "orderId is required"), u(t, { signal: e })),
|
|
30
20
|
meta: { doneState: !1 },
|
|
31
21
|
refetchInterval: (t) => {
|
|
32
|
-
let n = t.state.data,
|
|
33
|
-
if (
|
|
34
|
-
if (n &&
|
|
35
|
-
if (
|
|
36
|
-
if (
|
|
22
|
+
let n = t.state.data, l = t.options.meta, u = !!l && m(l);
|
|
23
|
+
if (u && l.doneState) return e("DeltaAuctionPollingQueryOptions").log("Shortcut return for refetchInterval"), !1;
|
|
24
|
+
if (n && d?.(n), n && r.completed.has(n.status)) {
|
|
25
|
+
if (a(n)) return f?.(n), u && (l.doneState = !0), !1;
|
|
26
|
+
if (s(n) || o(n) || i(n)) return p?.(n), u && (l.doneState = !0), !1;
|
|
37
27
|
}
|
|
38
|
-
return
|
|
28
|
+
return c;
|
|
39
29
|
},
|
|
40
30
|
enabled: !!t && n,
|
|
41
|
-
select:
|
|
31
|
+
select: l
|
|
42
32
|
};
|
|
43
33
|
}
|
|
44
|
-
function S({ orderId: e, enabled: t = !0, refetchInterval: r, select: i, onAuctionSuccess:
|
|
45
|
-
let { sdk:
|
|
46
|
-
onAuctionSuccess:
|
|
47
|
-
onAuctionFailure:
|
|
48
|
-
onUpdatedAuction:
|
|
34
|
+
function S({ orderId: e, enabled: t = !0, refetchInterval: r, select: i, onAuctionSuccess: a, onAuctionFailure: o, onUpdatedAuction: s }) {
|
|
35
|
+
let { sdk: c } = n({ chainId: 1 }), l = f({
|
|
36
|
+
onAuctionSuccess: a,
|
|
37
|
+
onAuctionFailure: o,
|
|
38
|
+
onUpdatedAuction: s
|
|
49
39
|
});
|
|
50
|
-
return
|
|
51
|
-
|
|
52
|
-
onAuctionSuccess:
|
|
53
|
-
onAuctionFailure:
|
|
54
|
-
onUpdatedAuction:
|
|
40
|
+
return u(() => {
|
|
41
|
+
l.current = {
|
|
42
|
+
onAuctionSuccess: a,
|
|
43
|
+
onAuctionFailure: o,
|
|
44
|
+
onUpdatedAuction: s
|
|
55
45
|
};
|
|
56
46
|
}, [
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
]),
|
|
47
|
+
a,
|
|
48
|
+
o,
|
|
49
|
+
s
|
|
50
|
+
]), m(d(() => x({
|
|
61
51
|
orderId: e,
|
|
62
52
|
enabled: t,
|
|
63
53
|
refetchInterval: r,
|
|
64
54
|
select: i,
|
|
65
|
-
getAuction:
|
|
66
|
-
onUpdatedAuction:
|
|
67
|
-
onAuctionSuccess:
|
|
68
|
-
onAuctionFailure:
|
|
55
|
+
getAuction: c.getDeltaOrderById,
|
|
56
|
+
onUpdatedAuction: l.current.onUpdatedAuction,
|
|
57
|
+
onAuctionSuccess: l.current.onAuctionSuccess,
|
|
58
|
+
onAuctionFailure: l.current.onAuctionFailure
|
|
69
59
|
}), [
|
|
70
60
|
e,
|
|
71
61
|
t,
|
|
72
62
|
r,
|
|
73
63
|
i,
|
|
74
|
-
|
|
64
|
+
c.getDeltaOrderById
|
|
75
65
|
]));
|
|
76
66
|
}
|
|
77
67
|
function C(e) {
|
|
78
|
-
let
|
|
79
|
-
|
|
80
|
-
let { onAuctionSuccess:
|
|
81
|
-
|
|
82
|
-
let { sdk:
|
|
83
|
-
return
|
|
84
|
-
let { orderId: t, signal: n } = e,
|
|
68
|
+
let u = l(10), d;
|
|
69
|
+
u[0] === e ? d = u[1] : (d = e === void 0 ? {} : e, u[0] = e, u[1] = d);
|
|
70
|
+
let { onAuctionSuccess: f, onAuctionFailure: m, refetchInterval: g } = d, _ = h(), y = t("EnsureDeltaOrderExecuted"), S;
|
|
71
|
+
u[2] === Symbol.for("react.memo_cache_sentinel") ? (S = { chainId: 1 }, u[2] = S) : S = u[2];
|
|
72
|
+
let { sdk: C } = n(S), w;
|
|
73
|
+
return u[3] !== y || u[4] !== m || u[5] !== f || u[6] !== _ || u[7] !== g || u[8] !== C.getDeltaOrderById ? (w = async (e) => {
|
|
74
|
+
let { orderId: t, signal: n } = e, l = v({ orderId: t }), u = new p(_, x({
|
|
85
75
|
orderId: t,
|
|
86
76
|
enabled: !0,
|
|
87
|
-
refetchInterval:
|
|
88
|
-
getAuction:
|
|
77
|
+
refetchInterval: g,
|
|
78
|
+
getAuction: C.getDeltaOrderById
|
|
89
79
|
}));
|
|
90
|
-
return new Promise((e,
|
|
91
|
-
let
|
|
92
|
-
|
|
80
|
+
return new Promise((e, d) => {
|
|
81
|
+
let p = setTimeout(() => {
|
|
82
|
+
y.log("QueryObserver", l, "timeout"), h(), d(/* @__PURE__ */ Error(`Order ${t} not found`));
|
|
93
83
|
}, b + 1e3);
|
|
94
84
|
n?.addEventListener("abort", () => {
|
|
95
|
-
|
|
85
|
+
p && clearTimeout(p), h(), d(/* @__PURE__ */ Error(`Order execution aborted: ${n.reason}`));
|
|
96
86
|
});
|
|
97
|
-
let
|
|
87
|
+
let h = u.subscribe((t) => {
|
|
98
88
|
let n = () => {
|
|
99
|
-
|
|
89
|
+
y.log("QueryObserver", l, "cleanup"), h();
|
|
100
90
|
};
|
|
101
|
-
|
|
102
|
-
let
|
|
103
|
-
if (
|
|
104
|
-
|
|
105
|
-
|
|
91
|
+
y.log("QueryObserver", l, t);
|
|
92
|
+
let u = t.data;
|
|
93
|
+
if (u && p !== null && (clearTimeout(p), p = null), u && r.completed.has(u.status)) {
|
|
94
|
+
let t = u;
|
|
95
|
+
if (a(t)) {
|
|
96
|
+
f?.(t), n(), e(u);
|
|
106
97
|
return;
|
|
107
98
|
}
|
|
108
|
-
if (
|
|
109
|
-
|
|
99
|
+
if (s(t) || o(t) || i(t)) {
|
|
100
|
+
m?.(t), n(), d(new c({ order: t }));
|
|
110
101
|
return;
|
|
111
102
|
}
|
|
112
103
|
}
|
|
113
104
|
if (t.error) {
|
|
114
|
-
n(),
|
|
105
|
+
n(), d(t.error);
|
|
115
106
|
return;
|
|
116
107
|
}
|
|
117
108
|
});
|
|
118
109
|
});
|
|
119
|
-
},
|
|
110
|
+
}, u[3] = y, u[4] = m, u[5] = f, u[6] = _, u[7] = g, u[8] = C.getDeltaOrderById, u[9] = w) : w = u[9], w;
|
|
120
111
|
}
|
|
121
112
|
//#endregion
|
|
122
113
|
export { v as deltaAuctionPollingQueryKey, C as useEnsureDeltaOrderExecuted, S as useWatchDeltaAuction };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWatchDeltaOrder.js","names":["QueryObserver","useQueries","useQuery","useQueryClient","QueryMeta","QueryObserverOptions","UseQueryOptions","UseQueryResult","useLayoutEffect","useMemo","useRef","assert","useDeltaV2SDK","getLogger","useLogger","DeltaOrderFailedError","DeltaV2","V2_TERMINAL_STATUSES","ReadonlySet","DeltaAuction","Set","V2_FAILURE_STATUSES","isV2OrderDone","order","has","status","isV2OrderExecuted","isV2OrderFailed","SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX","SingleDeltaAuctionQueryKey","base","orderId","deltaAuctionPollingQueryKey","const","DeltaV2Order","UseDeltaAuctionQueryOptions","Error","TData","DELTA_ORDER_POLLING_INTERVAL","ConstructDeltaAuctionPollingQueryOptionsInput","enabled","refetchInterval","select","data","getAuction","requestParams","signal","AbortSignal","Promise","Pick","UseWatchMultiDeltaAuctions","LOOK_FOR_ORDER_TIMEOUT","constructDeltaAuctionPollingQueryOptions","onUpdatedAuction","onAuctionSuccess","onAuctionFailure","doneState","isMetaWithDoneState","queryMeta","meta","queryKey","queryFn","query","maybeOrder","state","options","isWithDoneState","log","UseWatchDeltaAuctionQueryInput","auction","useWatchDeltaAuction","sdk","chainId","callbacksRef","current","queryOptions","getDeltaOrderById","EnsureOrderExecutedFn","useEnsureDeltaOrderExecuted","t0","$","_c","t1","undefined","queryClient","logger","t2","Symbol","for","t3","t4","observer","ObserverOptions","promise","resolve","reject","timeout","setTimeout","unsubscribe","addEventListener","clearTimeout","reason","subscribe","result","cleanup","error","ensureOrderSent","orderIds","useWatchMultiDeltaAuctions","queries","map","auctionsResults"],"sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"sourcesContent":["import {\n QueryObserver,\n useQueries,\n useQuery,\n useQueryClient,\n type QueryMeta,\n type QueryObserverOptions,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport { useLayoutEffect, useMemo, useRef } from \"react\";\nimport { assert } from \"ts-essentials\";\nimport { useDeltaV2SDK } from \"@/hooks/useSDK\";\nimport { getLogger, useLogger } from \"@/core/logger\";\nimport { DeltaOrderFailedError } from \"./errors\";\nimport type { DeltaV2 } from \"@velora-dex/sdk\";\n\n// ------------------------------------ Single Delta Auction -----------------------------------\n\n// v2-aware status helpers. v2 COMPLETED already accounts for crosschain bridge settlement.\nconst V2_TERMINAL_STATUSES: ReadonlySet<DeltaV2.DeltaAuction[\"status\"]> =\n new Set([\"COMPLETED\", \"FAILED\", \"EXPIRED\", \"CANCELLED\", \"REFUNDED\"]);\nconst V2_FAILURE_STATUSES: ReadonlySet<DeltaV2.DeltaAuction[\"status\"]> =\n new Set([\"FAILED\", \"EXPIRED\", \"CANCELLED\", \"REFUNDED\"]);\n\nconst isV2OrderDone = (order: DeltaV2.DeltaAuction) =>\n V2_TERMINAL_STATUSES.has(order.status);\nconst isV2OrderExecuted = (order: DeltaV2.DeltaAuction) =>\n order.status === \"COMPLETED\";\nconst isV2OrderFailed = (order: DeltaV2.DeltaAuction) =>\n V2_FAILURE_STATUSES.has(order.status);\n\nconst SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX = \"single_delta_auction\";\ntype SingleDeltaAuctionQueryKey = [\n base: typeof SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX,\n orderId?: string,\n];\n\nexport function deltaAuctionPollingQueryKey({\n orderId,\n}: {\n orderId?: string;\n} = {}): SingleDeltaAuctionQueryKey {\n return [SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX, orderId] as const;\n}\n\ntype DeltaV2Order = DeltaV2.DeltaAuction;\n\ntype UseDeltaAuctionQueryOptions<TData = DeltaV2Order> = UseQueryOptions<\n DeltaV2Order,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n>;\n\nconst DELTA_ORDER_POLLING_INTERVAL = 3_000;\n\ntype ConstructDeltaAuctionPollingQueryOptionsInput<TData = DeltaV2Order> = {\n orderId?: string;\n enabled?: boolean;\n refetchInterval?: number;\n select?: (data: DeltaV2Order) => TData;\n getAuction(\n orderId: string,\n requestParams: { signal?: AbortSignal }\n ): Promise<DeltaV2Order>;\n} & Pick<\n UseWatchMultiDeltaAuctions,\n \"onAuctionSuccess\" | \"onAuctionFailure\" | \"onUpdatedAuction\"\n>;\n\nconst LOOK_FOR_ORDER_TIMEOUT = 60_000;\n\nfunction constructDeltaAuctionPollingQueryOptions<TData = DeltaV2Order>({\n orderId,\n enabled = true,\n refetchInterval = DELTA_ORDER_POLLING_INTERVAL,\n select,\n getAuction,\n onUpdatedAuction,\n onAuctionSuccess,\n onAuctionFailure,\n}: ConstructDeltaAuctionPollingQueryOptionsInput<TData>): Pick<\n UseDeltaAuctionQueryOptions<TData>,\n \"queryKey\" | \"queryFn\" | \"meta\" | \"refetchInterval\" | \"enabled\" | \"select\"\n> {\n const doneState = false;\n\n const isMetaWithDoneState = (\n queryMeta: QueryMeta\n ): queryMeta is { doneState: boolean } => {\n return \"doneState\" in queryMeta && typeof queryMeta.doneState === \"boolean\";\n };\n\n // queryOptions has to be memoized, otherwise queryMeta is updated on each render\n const meta: { doneState: boolean } = {\n doneState,\n };\n\n return {\n queryKey: deltaAuctionPollingQueryKey({ orderId }),\n queryFn: ({ signal }) => {\n assert(orderId, \"orderId is required\");\n return getAuction(orderId, { signal });\n },\n meta,\n refetchInterval: (query) => {\n const maybeOrder = query.state.data;\n\n const queryMeta = query.options.meta;\n // refetchInterval is called on each render, regardless of queryOptions memoizations.\n // @TODO rework Watch Order logic to avoid callbacks inside refetchInterval,\n // or do away with these callbacks, they are unused currently.\n const isWithDoneState = !!queryMeta && isMetaWithDoneState(queryMeta);\n if (isWithDoneState && queryMeta.doneState) {\n getLogger(\"DeltaAuctionPollingQueryOptions\").log(\n \"Shortcut return for refetchInterval\"\n );\n return false;\n }\n\n // Order could have an updated status during its lifecycle\n if (maybeOrder) onUpdatedAuction?.(maybeOrder);\n\n // Order done with one way or the other.\n // v2's COMPLETED already accounts for destChain bridge settlement.\n if (maybeOrder && isV2OrderDone(maybeOrder)) {\n if (isV2OrderExecuted(maybeOrder)) {\n onAuctionSuccess?.(maybeOrder);\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling\n }\n if (isV2OrderFailed(maybeOrder)) {\n onAuctionFailure?.(maybeOrder);\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling\n }\n }\n\n return refetchInterval;\n },\n enabled: !!orderId && enabled,\n select,\n };\n}\n\n// ----------------- Single Delta Query -----------------------------------\n\ntype UseWatchDeltaAuctionQueryInput<TData = DeltaV2Order> = {\n orderId?: string;\n enabled?: boolean;\n refetchInterval?: number;\n select?: (data: DeltaV2Order) => TData;\n onAuctionSuccess?: (auction: DeltaV2Order) => void;\n onAuctionFailure?: (auction: DeltaV2Order) => void;\n onUpdatedAuction?: (auction: DeltaV2Order) => void;\n};\n\nexport function useWatchDeltaAuction<TData = DeltaV2Order>({\n orderId,\n enabled = true,\n refetchInterval,\n // important to pass stable reference of select function,\n // otherwise constructQueryOptions will re-execute every render\n select,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n}: UseWatchDeltaAuctionQueryInput<TData>): UseQueryResult<TData> {\n const { sdk } = useDeltaV2SDK({ chainId: 1 }); // chain doesn't matter\n\n const callbacksRef = useRef({\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n });\n\n useLayoutEffect(() => {\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n };\n }, [onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);\n\n const queryOptions = useMemo(() => {\n /* eslint-disable react-hooks/refs */\n return constructDeltaAuctionPollingQueryOptions<TData>({\n orderId,\n enabled,\n refetchInterval,\n select,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacksRef.current.onUpdatedAuction,\n onAuctionSuccess: callbacksRef.current.onAuctionSuccess,\n onAuctionFailure: callbacksRef.current.onAuctionFailure,\n });\n /* eslint-enable react-hooks/refs */\n }, [orderId, enabled, refetchInterval, select, sdk.getDeltaOrderById]);\n\n return useQuery<DeltaV2Order, Error, TData, SingleDeltaAuctionQueryKey>(\n queryOptions\n );\n}\n\ntype EnsureOrderExecutedFn<TData extends DeltaV2Order = DeltaV2Order> =\n (options: { orderId: string; signal?: AbortSignal }) => Promise<TData>;\n\nexport function useEnsureDeltaOrderExecuted<\n TData extends DeltaV2Order = DeltaV2Order,\n>({\n onAuctionSuccess,\n onAuctionFailure,\n refetchInterval,\n}: Pick<\n UseWatchDeltaAuctionQueryInput,\n \"onAuctionSuccess\" | \"onAuctionFailure\" | \"refetchInterval\"\n> = {}): EnsureOrderExecutedFn<TData> {\n const queryClient = useQueryClient();\n const logger = useLogger(\"EnsureDeltaOrderExecuted\");\n const { sdk } = useDeltaV2SDK({ chainId: 1 }); // chain doesn't matter\n\n const ensureOrderSent: EnsureOrderExecutedFn<TData> = async ({\n orderId,\n signal,\n }): Promise<TData> => {\n const queryKey: SingleDeltaAuctionQueryKey = deltaAuctionPollingQueryKey({\n orderId,\n });\n\n const queryOptions = constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled: true,\n refetchInterval,\n getAuction: sdk.getDeltaOrderById,\n });\n\n type ObserverOptions = QueryObserverOptions<\n TData,\n Error,\n TData,\n TData,\n SingleDeltaAuctionQueryKey\n >;\n\n const observer = new QueryObserver<\n TData,\n Error,\n TData,\n TData,\n SingleDeltaAuctionQueryKey\n // I wasn't able to shut up TS here\n >(queryClient, queryOptions as ObserverOptions);\n\n const promise = new Promise<TData>((resolve, reject) => {\n // don't leave the promise and therefore the observer hanging,\n // observer has its own stop-refetching logic in refetchIterval,\n // but this is an extra failsafe\n let timeout: NodeJS.Timeout | null = setTimeout(() => {\n logger.log(\"QueryObserver\", queryKey, \"timeout\");\n unsubscribe();\n reject(new Error(`Order ${orderId} not found`));\n }, LOOK_FOR_ORDER_TIMEOUT + 1000); // a bit of jitter time\n\n signal?.addEventListener(\"abort\", () => {\n if (timeout) {\n clearTimeout(timeout);\n }\n unsubscribe();\n reject(new Error(`Order execution aborted: ${signal.reason}`));\n });\n\n const unsubscribe = observer.subscribe((result) => {\n const cleanup = () => {\n logger.log(\"QueryObserver\", queryKey, \"cleanup\");\n unsubscribe();\n };\n\n logger.log(\"QueryObserver\", queryKey, result);\n\n const maybeOrder = result.data;\n\n if (maybeOrder && timeout !== null) {\n // Order fetched at least once\n clearTimeout(timeout);\n timeout = null;\n }\n\n // Order done with one way or the other.\n // v2's COMPLETED already accounts for destChain bridge settlement.\n if (maybeOrder && isV2OrderDone(maybeOrder)) {\n if (isV2OrderExecuted(maybeOrder)) {\n onAuctionSuccess?.(maybeOrder);\n cleanup();\n resolve(maybeOrder);\n return;\n }\n if (isV2OrderFailed(maybeOrder)) {\n onAuctionFailure?.(maybeOrder);\n cleanup();\n reject(\n new DeltaOrderFailedError({\n // DeltaOrderFailedError.order is typed against v1 FailedDeltaAuction;\n // not migrating that surface per scope of this change.\n order: maybeOrder as never,\n })\n );\n return;\n }\n }\n\n if (result.error) {\n cleanup();\n reject(result.error);\n return;\n }\n });\n });\n\n return promise;\n };\n\n return ensureOrderSent;\n}\n\n// ----------------- Multi Delta Queries -----------------------------------\n\ntype UseWatchMultiDeltaAuctions = {\n orderIds: string[];\n enabled?: boolean;\n onAuctionSuccess?: (auction: DeltaV2Order) => void;\n onAuctionFailure?: (auction: DeltaV2Order) => void;\n onUpdatedAuction?: (auction: DeltaV2Order) => void;\n};\n\nexport function useWatchMultiDeltaAuctions({\n orderIds,\n enabled = true,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n}: UseWatchMultiDeltaAuctions): UseQueryResult<DeltaV2Order>[] {\n const { sdk } = useDeltaV2SDK({ chainId: 1 }); // chain doesn't matter\n\n const callbacksRef = useRef({\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n });\n\n useLayoutEffect(() => {\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n };\n }, [onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);\n\n const queries = useMemo<UseDeltaAuctionQueryOptions<DeltaV2Order>[]>(\n () =>\n orderIds.map(\n /* eslint-disable react-hooks/refs */\n (orderId) =>\n constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacksRef.current.onUpdatedAuction,\n onAuctionSuccess: callbacksRef.current.onAuctionSuccess,\n onAuctionFailure: callbacksRef.current.onAuctionFailure,\n })\n /* eslint-enable react-hooks/refs */\n ),\n [enabled, orderIds, sdk.getDeltaOrderById]\n );\n\n const auctionsResults = useQueries({ queries });\n\n return auctionsResults;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useWatchDeltaOrder.js","names":["QueryObserver","useQueries","useQuery","useQueryClient","QueryMeta","QueryObserverOptions","UseQueryOptions","UseQueryResult","useLayoutEffect","useMemo","useRef","assert","useDeltaSDK","BridgedDepositResponseFailure","BridgedDepositResponseSuccess","GetBridgedDepositStatusInput","BridgedDepositResponse","useBridgedDepositStatus","DeltaOrderStatusChecker","isExecutedDeltaAuction","isFailedDeltaAuction","isDeltaAuctionExpired","isCanceledDeltaAuction","ExecutedDeltaAuction","FailedDeltaAuction","getLogger","useLogger","DeltaOrderFailedError","DeltaAuction","DeltaAuctionUnion","SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX","SingleDeltaAuctionQueryKey","base","orderId","deltaAuctionPollingQueryKey","const","UseDeltaAuctionQueryOptions","Error","TData","DELTA_ORDER_POLLING_INTERVAL","ConstructDeltaAuctionPollingQueryOptionsInput","enabled","refetchInterval","select","data","getAuction","requestParams","signal","AbortSignal","Promise","Pick","UseWatchMultiDeltaAuctions","LOOK_FOR_ORDER_TIMEOUT","constructDeltaAuctionPollingQueryOptions","onUpdatedAuction","onAuctionSuccess","onAuctionFailure","doneState","isMetaWithDoneState","queryMeta","meta","queryKey","queryFn","query","maybeOrder","state","options","isWithDoneState","log","completed","has","status","UseWatchDeltaAuctionQueryInput","auction","useWatchDeltaAuction","sdk","chainId","callbacksRef","current","queryOptions","getDeltaOrderById","EnsureOrderExecutedFn","useEnsureDeltaOrderExecuted","t0","$","_c","t1","undefined","queryClient","logger","t2","Symbol","for","t3","t4","observer","ObserverOptions","promise","resolve","reject","timeout","setTimeout","unsubscribe","addEventListener","clearTimeout","reason","subscribe","result","cleanup","stricterOrder","order","error","ensureOrderSent","orderIds","useWatchMultiDeltaAuctions","queries","map","auctionsResults","MultiOrdersStatusCrossChainInput","orders","bridgeResponse","useWatchMultiOrdersStatusCrossChain","reduce","_temp","deposits","depositId2Order","response","order_0","depositId","onNewResponse","deposit","order_1","bridgeMetadata","successfulOrder","bridgeStatus","fillTx","onDepositSuccess","deposit_0","order_2","failedOrder","onDepositFailure","t5","deposits_0","onNewResponse_0","onDepositSuccess_0","onDepositFailure_0","t6","depositStatuses","acc","push","String","originChainId"],"sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"sourcesContent":["import {\n QueryObserver,\n useQueries,\n useQuery,\n useQueryClient,\n type QueryMeta,\n type QueryObserverOptions,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport { useLayoutEffect, useMemo, useRef } from \"react\";\nimport { assert } from \"ts-essentials\";\nimport { useDeltaSDK } from \"@/hooks/useSDK\";\nimport {\n type BridgedDepositResponseFailure,\n type BridgedDepositResponseSuccess,\n type GetBridgedDepositStatusInput,\n} from \"../bridge/utils\";\nimport type { BridgedDepositResponse } from \"../bridge/types\";\nimport { useBridgedDepositStatus } from \"../bridge/useBridgedDeposit\";\nimport {\n DeltaOrderStatusChecker,\n isExecutedDeltaAuction,\n isFailedDeltaAuction,\n isDeltaAuctionExpired,\n isCanceledDeltaAuction,\n} from \"../orders/utils\";\nimport type { ExecutedDeltaAuction, FailedDeltaAuction } from \"../orders/types\";\nimport { getLogger, useLogger } from \"@/core/logger\";\nimport { DeltaOrderFailedError } from \"./errors\";\nimport type { DeltaAuction, DeltaAuctionUnion } from \"@velora-dex/sdk\";\n\n// ------------------------------------ Single Delta Auction -----------------------------------\n\nconst SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX = \"single_delta_auction\";\ntype SingleDeltaAuctionQueryKey = [\n base: typeof SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX,\n orderId?: string,\n];\n\nexport function deltaAuctionPollingQueryKey({\n orderId,\n}: {\n orderId?: string;\n} = {}): SingleDeltaAuctionQueryKey {\n return [SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX, orderId] as const;\n}\n\ntype UseDeltaAuctionQueryOptions<TData = DeltaAuction> = UseQueryOptions<\n DeltaAuction,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n>;\n\nconst DELTA_ORDER_POLLING_INTERVAL = 3_000;\n\ntype ConstructDeltaAuctionPollingQueryOptionsInput<TData = DeltaAuction> = {\n orderId?: string;\n enabled?: boolean;\n refetchInterval?: number;\n select?: (data: DeltaAuction) => TData;\n getAuction(\n orderId: string,\n requestParams: { signal?: AbortSignal }\n ): Promise<DeltaAuction>;\n} & Pick<\n UseWatchMultiDeltaAuctions,\n \"onAuctionSuccess\" | \"onAuctionFailure\" | \"onUpdatedAuction\"\n>;\n\nconst LOOK_FOR_ORDER_TIMEOUT = 60_000;\n\nfunction constructDeltaAuctionPollingQueryOptions<TData = DeltaAuction>({\n orderId,\n enabled = true,\n refetchInterval = DELTA_ORDER_POLLING_INTERVAL,\n select,\n getAuction,\n onUpdatedAuction,\n onAuctionSuccess,\n onAuctionFailure,\n}: ConstructDeltaAuctionPollingQueryOptionsInput<TData>): Pick<\n UseDeltaAuctionQueryOptions<TData>,\n \"queryKey\" | \"queryFn\" | \"meta\" | \"refetchInterval\" | \"enabled\" | \"select\"\n> {\n const doneState = false;\n\n const isMetaWithDoneState = (\n queryMeta: QueryMeta\n ): queryMeta is { doneState: boolean } => {\n return \"doneState\" in queryMeta && typeof queryMeta.doneState === \"boolean\";\n };\n\n // queryOptions has to be memoized, otherwise queryMeta is updated on each render\n const meta: { doneState: boolean } = {\n doneState,\n };\n\n return {\n queryKey: deltaAuctionPollingQueryKey({ orderId }),\n queryFn: ({ signal }) => {\n assert(orderId, \"orderId is required\");\n return getAuction(orderId, { signal });\n },\n meta,\n refetchInterval: (query) => {\n const maybeOrder = query.state.data;\n\n const queryMeta = query.options.meta;\n // refetchInterval is called on each render, regardless of queryOptions memoizations.\n // @TODO rework Watch Order logic to avoid callbacks inside refetchInterval,\n // or do away with these callbacks, they are unused currently.\n const isWithDoneState = !!queryMeta && isMetaWithDoneState(queryMeta);\n if (isWithDoneState && queryMeta.doneState) {\n getLogger(\"DeltaAuctionPollingQueryOptions\").log(\n \"Shortcut return for refetchInterval\"\n );\n return false;\n }\n\n // Order could have an updated status during its lifecycle\n if (maybeOrder) onUpdatedAuction?.(maybeOrder);\n\n // Order done with one way or the other\n if (\n maybeOrder &&\n DeltaOrderStatusChecker.completed.has(maybeOrder.status)\n ) {\n // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(maybeOrder)) {\n onAuctionSuccess?.(maybeOrder);\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling\n }\n if (\n isFailedDeltaAuction(maybeOrder) ||\n isDeltaAuctionExpired(maybeOrder) ||\n isCanceledDeltaAuction(maybeOrder)\n ) {\n onAuctionFailure?.(maybeOrder);\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling\n }\n }\n\n return refetchInterval;\n },\n enabled: !!orderId && enabled,\n select,\n };\n}\n\n// ----------------- Single Delta Query -----------------------------------\n\ntype UseWatchDeltaAuctionQueryInput<TData = DeltaAuction> = {\n orderId?: string;\n enabled?: boolean;\n refetchInterval?: number;\n select?: (data: DeltaAuction) => TData;\n onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;\n onAuctionFailure?: (auction: FailedDeltaAuction) => void;\n onUpdatedAuction?: (auction: DeltaAuction) => void;\n};\n\nexport function useWatchDeltaAuction<TData = DeltaAuction>({\n orderId,\n enabled = true,\n refetchInterval,\n // important to pass stable reference of select function,\n // otherwise constructQueryOptions will re-execute every render\n select,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n}: UseWatchDeltaAuctionQueryInput<TData>): UseQueryResult<TData> {\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const callbacksRef = useRef({\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n });\n\n useLayoutEffect(() => {\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n };\n }, [onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);\n\n const queryOptions = useMemo(() => {\n /* eslint-disable react-hooks/refs */\n return constructDeltaAuctionPollingQueryOptions<TData>({\n orderId,\n enabled,\n refetchInterval,\n select,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacksRef.current.onUpdatedAuction,\n onAuctionSuccess: callbacksRef.current.onAuctionSuccess,\n onAuctionFailure: callbacksRef.current.onAuctionFailure,\n });\n /* eslint-enable react-hooks/refs */\n }, [orderId, enabled, refetchInterval, select, sdk.getDeltaOrderById]);\n\n return useQuery<DeltaAuction, Error, TData, SingleDeltaAuctionQueryKey>(\n queryOptions\n );\n}\n\ntype EnsureOrderExecutedFn<\n TData extends DeltaAuctionUnion = DeltaAuctionUnion,\n> = (options: { orderId: string; signal?: AbortSignal }) => Promise<TData>;\n\nexport function useEnsureDeltaOrderExecuted<\n TData extends DeltaAuctionUnion = DeltaAuctionUnion,\n>({\n onAuctionSuccess,\n onAuctionFailure,\n refetchInterval,\n}: Pick<\n UseWatchDeltaAuctionQueryInput,\n \"onAuctionSuccess\" | \"onAuctionFailure\" | \"refetchInterval\"\n> = {}): EnsureOrderExecutedFn<TData> {\n const queryClient = useQueryClient();\n const logger = useLogger(\"EnsureDeltaOrderExecuted\");\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const ensureOrderSent: EnsureOrderExecutedFn<TData> = async ({\n orderId,\n signal,\n }): Promise<TData> => {\n const queryKey: SingleDeltaAuctionQueryKey = deltaAuctionPollingQueryKey({\n orderId,\n });\n\n const queryOptions = constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled: true,\n refetchInterval,\n getAuction: sdk.getDeltaOrderById,\n });\n\n type ObserverOptions = QueryObserverOptions<\n TData,\n Error,\n TData,\n TData,\n SingleDeltaAuctionQueryKey\n >;\n\n const observer = new QueryObserver<\n TData,\n Error,\n TData,\n TData,\n SingleDeltaAuctionQueryKey\n // I wasn't able to shut up TS here\n >(queryClient, queryOptions as ObserverOptions);\n\n const promise = new Promise<TData>((resolve, reject) => {\n // don't leave the promise and therefore the observer hanging,\n // observer has its own stop-refetching logic in refetchIterval,\n // but this is an extra failsafe\n let timeout: NodeJS.Timeout | null = setTimeout(() => {\n logger.log(\"QueryObserver\", queryKey, \"timeout\");\n unsubscribe();\n reject(new Error(`Order ${orderId} not found`));\n }, LOOK_FOR_ORDER_TIMEOUT + 1000); // a bit of jitter time\n\n signal?.addEventListener(\"abort\", () => {\n if (timeout) {\n clearTimeout(timeout);\n }\n unsubscribe();\n reject(new Error(`Order execution aborted: ${signal.reason}`));\n });\n\n const unsubscribe = observer.subscribe((result) => {\n const cleanup = () => {\n logger.log(\"QueryObserver\", queryKey, \"cleanup\");\n unsubscribe();\n };\n\n logger.log(\"QueryObserver\", queryKey, result);\n\n const maybeOrder = result.data;\n\n if (maybeOrder && timeout !== null) {\n // Order fetched at least once\n clearTimeout(timeout);\n timeout = null;\n }\n\n // Order done with one way or the other\n if (\n maybeOrder &&\n DeltaOrderStatusChecker.completed.has(maybeOrder.status)\n ) {\n // SDK type guards require DeltaAuctionUnion, generic TData type is too broad\n const stricterOrder: DeltaAuctionUnion = maybeOrder;\n // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(stricterOrder)) {\n onAuctionSuccess?.(stricterOrder);\n cleanup();\n resolve(maybeOrder);\n return;\n }\n if (\n isFailedDeltaAuction(stricterOrder) ||\n isDeltaAuctionExpired(stricterOrder) ||\n isCanceledDeltaAuction(stricterOrder)\n ) {\n onAuctionFailure?.(stricterOrder);\n cleanup();\n reject(\n new DeltaOrderFailedError({\n order: stricterOrder,\n })\n );\n return;\n }\n }\n\n if (result.error) {\n cleanup();\n reject(result.error);\n return;\n }\n });\n });\n\n return promise;\n };\n\n return ensureOrderSent;\n}\n\n// ----------------- Multi Delta Queries -----------------------------------\n\ntype UseWatchMultiDeltaAuctions = {\n orderIds: string[];\n enabled?: boolean;\n onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;\n onAuctionFailure?: (auction: FailedDeltaAuction) => void;\n onUpdatedAuction?: (auction: DeltaAuction) => void;\n};\n\nexport function useWatchMultiDeltaAuctions({\n orderIds,\n enabled = true,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n}: UseWatchMultiDeltaAuctions): UseQueryResult<DeltaAuction>[] {\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const callbacksRef = useRef({\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n });\n\n useLayoutEffect(() => {\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n };\n }, [onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);\n\n const queries = useMemo<UseDeltaAuctionQueryOptions<DeltaAuction>[]>(\n () =>\n orderIds.map(\n /* eslint-disable react-hooks/refs */\n (orderId) =>\n constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacksRef.current.onUpdatedAuction,\n onAuctionSuccess: callbacksRef.current.onAuctionSuccess,\n onAuctionFailure: callbacksRef.current.onAuctionFailure,\n })\n /* eslint-enable react-hooks/refs */\n ),\n [enabled, orderIds, sdk.getDeltaOrderById]\n );\n\n const auctionsResults = useQueries({ queries });\n\n return auctionsResults;\n}\n\ntype MultiOrdersStatusCrossChainInput = {\n orders: DeltaAuction[];\n onAuctionSuccess?: (order: DeltaAuction) => void;\n onAuctionFailure?: (order: DeltaAuction) => void;\n onUpdatedAuction?: (\n auction: DeltaAuction,\n bridgeResponse: BridgedDepositResponse\n ) => void;\n};\n\n// can be used for checking Crosschain Order status checking\n// if status check from API is slow to update\n\n// @TODO Currently not used. Adapt for TWAP orders before usage\nexport function useWatchMultiOrdersStatusCrossChain({\n orders,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n}: MultiOrdersStatusCrossChainInput): UseQueryResult<BridgedDepositResponse>[] {\n const { deposits, onNewResponse, onDepositSuccess, onDepositFailure } =\n useMemo(() => {\n const { deposits, depositId2Order } = orders.reduce<{\n deposits: GetBridgedDepositStatusInput[];\n depositId2Order: Record<string, DeltaAuction>;\n }>(\n (acc, order) => {\n if (order.bridgeMetadata?.depositId) {\n acc.deposits.push({\n depositId: String(order.bridgeMetadata.depositId),\n originChainId: order.chainId,\n });\n acc.depositId2Order[order.bridgeMetadata.depositId] = order;\n }\n return acc;\n },\n { deposits: [], depositId2Order: {} }\n );\n const onNewResponse = (response: BridgedDepositResponse) => {\n const order = depositId2Order[response.depositId];\n if (order) {\n onUpdatedAuction?.(order, response);\n }\n };\n\n const onDepositSuccess = onAuctionSuccess\n ? (deposit: BridgedDepositResponseSuccess) => {\n const order = depositId2Order[deposit.depositId];\n // order.bridgeMetadata should be filled but not according to types\n if (order && order.bridgeMetadata !== null) {\n const successfulOrder = {\n ...order,\n bridgeStatus: deposit.status,\n bridgeMetadata: {\n ...order.bridgeMetadata,\n fillTx: deposit.fillTx,\n },\n };\n onAuctionSuccess(successfulOrder);\n }\n }\n : undefined;\n\n const onDepositFailure = onAuctionFailure\n ? (deposit: BridgedDepositResponseFailure) => {\n const order = depositId2Order[deposit.depositId];\n // order.bridgeMetadata should be filled but not according to types\n if (order && order.bridgeMetadata !== null) {\n const failedOrder = {\n ...order,\n bridgeStatus: deposit.status,\n bridgeMetadata: {\n ...order.bridgeMetadata,\n fillTx: deposit.fillTx || undefined,\n },\n };\n onAuctionFailure(failedOrder);\n }\n }\n : undefined;\n\n return { deposits, onNewResponse, onDepositSuccess, onDepositFailure };\n }, [orders, onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);\n\n const depositStatuses = useBridgedDepositStatus({\n deposits,\n onNewResponse,\n onDepositSuccess,\n onDepositFailure,\n });\n\n return depositStatuses;\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAIlD,wBAAgB,8BAA8B,CAAC,EAC7C,KAAK,EACL,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;CAC1B,GAAG,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAIlD,wBAAgB,8BAA8B,CAAC,EAC7C,KAAK,EACL,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;CAC1B,GAAG,MAAM,iBAAiB,CA4B1B"}
|
|
@@ -11,7 +11,7 @@ function r({ price: r, priceError: i }) {
|
|
|
11
11
|
isUnavailable: !1
|
|
12
12
|
};
|
|
13
13
|
let a = null, o = null;
|
|
14
|
-
return r ?
|
|
14
|
+
return r ? (a = r.srcUSD, o = e(r) ? r.receivedDestUSD : r.destUSD) : i && n(i) && i.response && (a = i.response.data.priceRoute.srcUSD, o = i.response.data.priceRoute.destUSD), t({
|
|
15
15
|
srcUSD: a,
|
|
16
16
|
destUSD: o
|
|
17
17
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","names":["getPriceImpact","PriceImpactResult","DeltaOrMarketPrice","isMarketPriceImpactError","isDeltaPrice","getPriceImpactFromPriceFactory","price","priceError","Error","priceImpact","undefined","isHighImpact","isMediumImpact","isUnavailable","srcUSD","destUSD","
|
|
1
|
+
{"version":3,"file":"factory.js","names":["getPriceImpact","PriceImpactResult","DeltaOrMarketPrice","isMarketPriceImpactError","isDeltaPrice","getPriceImpactFromPriceFactory","price","priceError","Error","priceImpact","undefined","isHighImpact","isMediumImpact","isUnavailable","srcUSD","destUSD","receivedDestUSD","response","data","priceRoute"],"sources":["../../../../src/hooks/swap/prices/factory.ts"],"sourcesContent":["import {\n getPriceImpact,\n type PriceImpactResult,\n} from \"@/lib/utils/priceImpact\";\nimport type { DeltaOrMarketPrice } from \"./types\";\nimport { isMarketPriceImpactError } from \"./market/queries/errors\";\nimport { isDeltaPrice } from \"./delta/queries/useDeltaPriceQuery\";\n\nexport function getPriceImpactFromPriceFactory({\n price,\n priceError,\n}: {\n price?: DeltaOrMarketPrice;\n priceError: Error | null;\n}): () => PriceImpactResult {\n return () => {\n if (!price && !priceError) {\n return {\n priceImpact: undefined,\n isHighImpact: false,\n isMediumImpact: false,\n isUnavailable: false,\n };\n }\n\n let srcUSD: string | null = null;\n let destUSD: string | null = null;\n\n if (price) {\n srcUSD = price.srcUSD;\n destUSD = isDeltaPrice(price) ? price.receivedDestUSD : price.destUSD;\n } else if (\n priceError &&\n isMarketPriceImpactError(priceError) &&\n priceError.response\n ) {\n srcUSD = priceError.response.data.priceRoute.srcUSD;\n destUSD = priceError.response.data.priceRoute.destUSD;\n }\n\n return getPriceImpact({ srcUSD, destUSD });\n };\n}\n"],"mappings":";;;;AAQA,SAAgBK,EAA+B,EAC7CC,UACAC,iBAI0B;CAC1B,aAAa;EACX,IAAI,CAACD,KAAS,CAACC,GACb,OAAO;GACLE,aAAaC,KAAAA;GACbC,cAAc;GACdC,gBAAgB;GAChBC,eAAe;GAChB;EAGH,IAAIC,IAAwB,MACxBC,IAAyB;EAc7B,OAZIT,KACFQ,IAASR,EAAMQ,QACfC,IAAUX,EAAaE,EAAM,GAAGA,EAAMU,kBAAkBV,EAAMS,WAE9DR,KACAJ,EAAyBI,EAAW,IACpCA,EAAWU,aAEXH,IAASP,EAAWU,SAASC,KAAKC,WAAWL,QAC7CC,IAAUR,EAAWU,SAASC,KAAKC,WAAWJ,UAGzCf,EAAe;GAAEc;GAAQC;GAAS,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export type DeltaOrMarketPrice = OptimalRate |
|
|
1
|
+
import { OptimalRate, DeltaPrice, BridgePrice } from '@velora-dex/sdk';
|
|
2
|
+
export type DeltaOrMarketPrice = OptimalRate | DeltaPrice | BridgePrice;
|
|
3
|
+
export type DeltaOrBridgePrice = DeltaPrice | BridgePrice;
|
|
3
4
|
export type UseSwapPricesInput = {
|
|
4
5
|
enabled?: boolean;
|
|
5
6
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE/D,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,CAAC;AAExE,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,WAAW,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MarketPriceQueryKey } from './market/queries/useMarketPriceQuery';
|
|
2
2
|
import { DeltaPriceQueryKey } from './delta/queries/useDeltaPriceQuery';
|
|
3
3
|
import { SwapMode } from '../../../components/widget/SwapModeSwitcher/state/types';
|
|
4
|
-
import {
|
|
4
|
+
import { BridgePrice, DeltaPrice, OptimalRate, SwapSideUnion } from '@velora-dex/sdk';
|
|
5
5
|
import { DeltaOrMarketPrice, UseSwapPricesInput } from './types';
|
|
6
6
|
import { QueryObserverResult, RefetchOptions } from '@tanstack/react-query';
|
|
7
7
|
import { PriceImpactResult } from '../../../lib/utils/priceImpact';
|
|
@@ -23,7 +23,7 @@ type UseSwapPricesReturn = {
|
|
|
23
23
|
queryKey: MarketPriceQueryKey;
|
|
24
24
|
};
|
|
25
25
|
delta: {
|
|
26
|
-
price?:
|
|
26
|
+
price?: DeltaPrice | BridgePrice;
|
|
27
27
|
side?: SwapSideUnion;
|
|
28
28
|
/** @description whether the delta price can be used for the current price params && widget config */
|
|
29
29
|
canBeUsed: boolean;
|
|
@@ -31,7 +31,7 @@ type UseSwapPricesReturn = {
|
|
|
31
31
|
isFetching: boolean;
|
|
32
32
|
isRefetching: boolean;
|
|
33
33
|
isError: boolean;
|
|
34
|
-
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<
|
|
34
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<DeltaPrice | BridgePrice, Error>>;
|
|
35
35
|
error: Error | null;
|
|
36
36
|
cachedError: Error | null;
|
|
37
37
|
queryKey: DeltaPriceQueryKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,sCAAsC,CAAC;AAM9C,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AAEjF,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"useSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,sCAAsC,CAAC;AAM9C,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AAEjF,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,aAAa,EACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAQtE,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AASjE,KAAK,mBAAmB,GAAG;IACzB,SAAS,EAAE,QAAQ,CAAC;IACpB,qBAAqB,EAAE,QAAQ,CAAC;IAChC,MAAM,EAAE;QACN,KAAK,CAAC,EAAE,WAAW,CAAC;QACpB,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,qFAAqF;QACrF,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,CACP,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;QACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;QAC1B,QAAQ,EAAE,mBAAmB,CAAC;KAC/B,CAAC;IACF,KAAK,EAAE;QACL,KAAK,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;QACjC,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,qGAAqG;QACrG,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,CACP,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,mBAAmB,CAAC,UAAU,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACnE,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;QACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;QAC1B,QAAQ,EAAE,kBAAkB,CAAC;KAC9B,CAAC;CACH,CAAC;AAEF,wBAAgB,aAAa,CAC3B,MAAM,GAAE,kBAAuB,GAC9B,mBAAmB,CA2JrB;AAED,KAAK,yBAAyB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,cAAc,EAAE,MAAM,iBAAiB,CAAC;CACzC,GAAG,CACA,CAAC;IACC,SAAS,EAAE,QAAQ,CAAC;CACrB,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC,CAAC,GAC1E,CAAC;IACC,SAAS,EAAE,OAAO,CAAC;CACpB,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC,CAAC,CAC5E,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,MAAM,GAAE,kBAAsC,GAC7C,yBAAyB,CAuC3B;AAED,KAAK,8BAA8B,GAAG;IACpC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,CAAC;IACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,iBAAiB,CAAC;IACxC,uBAAuB,EAAE,OAAO,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,6BAA6B,EAAE,OAAO,CAAC;IACvC,4BAA4B,EAAE,OAAO,CAAC;IACtC,oCAAoC,EAAE,OAAO,CAAC;CAC/C,CAAC;AAEF,wBAAgB,wBAAwB,CACtC,MAAM,GAAE,kBAAuC,GAC9C,8BAA8B,CAoChC"}
|