@velora-dex/widget 0.5.1-dev.1 → 0.6.1-dev.1
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/assets/two-dots.svg.js +12 -0
- package/dist/assets/two-dots.svg.js.map +1 -0
- package/dist/components/web3/ConnectWallets/walletFlags.d.ts +90 -0
- package/dist/components/web3/ConnectWallets/walletFlags.d.ts.map +1 -0
- package/dist/components/web3/ConnectWallets/walletFlags.js +104 -0
- package/dist/components/web3/ConnectWallets/walletFlags.js.map +1 -0
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts +4 -1
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
- package/dist/components/web3/ConnectWallets/walletIcons.js +23 -3
- package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.js +24 -14
- package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
- package/dist/components/widget/Button/CancelButton/CancelButton.js +44 -40
- package/dist/components/widget/Button/CancelButton/CancelButton.js.map +1 -1
- package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.d.ts +15 -0
- package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.d.ts.map +1 -0
- package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js +66 -0
- package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js.map +1 -0
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +6 -3
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.js +75 -2
- package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js +85 -49
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js +53 -61
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +7 -5
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +53 -45
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/types.d.ts +0 -1
- package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/utils.js +2 -11
- package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
- package/dist/components/widget/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/components/widget/NumberInput/NumberInput.js +65 -68
- package/dist/components/widget/NumberInput/NumberInput.js.map +1 -1
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.d.ts.map +1 -1
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js +33 -22
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/OtcOrderItem/utils.d.ts.map +1 -1
- package/dist/components/widget/OtcOrderItem/utils.js +2 -5
- package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
- package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.d.ts +7 -0
- package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js +84 -0
- package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js.map +1 -0
- package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.d.ts +12 -0
- package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js +227 -0
- package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js.map +1 -0
- package/dist/components/widget/TradeOverview/CancelOrder/constants.d.ts +8 -0
- package/dist/components/widget/TradeOverview/CancelOrder/constants.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/CancelOrder/constants.js +20 -0
- package/dist/components/widget/TradeOverview/CancelOrder/constants.js.map +1 -0
- package/dist/components/widget/TradeOverview/CancelOrder/utils.d.ts +12 -0
- package/dist/components/widget/TradeOverview/CancelOrder/utils.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/CancelOrder/utils.js +49 -0
- package/dist/components/widget/TradeOverview/CancelOrder/utils.js.map +1 -0
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +2 -2
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +38 -28
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js +16 -18
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts +2 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +63 -52
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/index.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/index.js +21 -14
- package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +125 -102
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js +6 -5
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts +2 -1
- package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js +66 -24
- package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeError/index.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeError/index.js +11 -7
- package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeError/utils.d.ts +4 -1
- package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeError/utils.js +20 -2
- package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverview.d.ts +5 -4
- package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +15 -21
- package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
- package/dist/components/widget/TradeOverview/steps.d.ts +1 -1
- package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/steps.js.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +24 -5
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.js +39 -11
- package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +4 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +133 -31
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts +7 -2
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +18 -14
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
- package/dist/components/widget/TransactionDetails/TransactionListItem.d.ts.map +1 -1
- package/dist/components/widget/TransactionDetails/TransactionListItem.js +1 -1
- package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
- package/dist/components/widget/Twap/CustomDurationDrawer.d.ts +6 -0
- package/dist/components/widget/Twap/CustomDurationDrawer.d.ts.map +1 -0
- package/dist/components/widget/Twap/CustomDurationDrawer.js +237 -0
- package/dist/components/widget/Twap/CustomDurationDrawer.js.map +1 -0
- package/dist/components/widget/Twap/OrderDuration.d.ts.map +1 -1
- package/dist/components/widget/Twap/OrderDuration.js +83 -16
- package/dist/components/widget/Twap/OrderDuration.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/core/Updaters.d.ts.map +1 -1
- package/dist/core/Updaters.js +2 -0
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js +4 -4
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
- package/dist/core/state/widgetEventsAtom.js +53 -39
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/core/twap/state/constants.d.ts +4 -0
- package/dist/core/twap/state/constants.d.ts.map +1 -1
- package/dist/core/twap/state/constants.js +14 -25
- package/dist/core/twap/state/constants.js.map +1 -1
- package/dist/core/twap/state/twapParamsAtom.d.ts +9 -0
- package/dist/core/twap/state/twapParamsAtom.d.ts.map +1 -1
- package/dist/core/twap/state/twapParamsAtom.js +10 -1
- package/dist/core/twap/state/twapParamsAtom.js.map +1 -1
- package/dist/core/twap/useTwapDetailsListProps.d.ts.map +1 -1
- package/dist/core/twap/useTwapDetailsListProps.js +3 -2
- package/dist/core/twap/useTwapDetailsListProps.js.map +1 -1
- package/dist/events/getters/twap.d.ts.map +1 -1
- package/dist/events/getters/twap.js +4 -9
- package/dist/events/getters/twap.js.map +1 -1
- package/dist/events/types/{cancel.d.ts → cancelOrder.d.ts} +5 -2
- package/dist/events/types/cancelOrder.d.ts.map +1 -0
- package/dist/events/types/cancelTx.d.ts +35 -0
- package/dist/events/types/cancelTx.d.ts.map +1 -0
- package/dist/events/types/common.d.ts +1 -1
- package/dist/events/types/common.d.ts.map +1 -1
- package/dist/events/types/index.d.ts +5 -2
- package/dist/events/types/index.d.ts.map +1 -1
- package/dist/events/types/swap.d.ts +11 -1
- package/dist/events/types/swap.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.js +1 -0
- package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
- package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
- package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts +20 -2
- package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts.map +1 -1
- package/dist/hooks/otc/mutations/useCancelLimitOrder.js +197 -74
- package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +0 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts +6 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +37 -24
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts +2 -2
- package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js +28 -42
- package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/utils.js +1 -4
- package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts +6 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js +16 -0
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +11 -5
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js +176 -145
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts +11 -0
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js +69 -0
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +3 -3
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +32 -35
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts +1 -5
- package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +7 -4
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.d.ts +10 -12
- package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.js +8 -29
- package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +7 -9
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +6 -35
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.d.ts +6 -2
- package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.d.ts.map +1 -1
- package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js +8 -2
- package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.js +6 -1
- package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +12 -12
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTwapPrices.js +26 -13
- package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/errors.d.ts +6 -0
- package/dist/hooks/swap/tradeFlow/common/errors.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/errors.js +15 -1
- package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +9 -4
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +55 -28
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +2 -2
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +45 -57
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +8 -3
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +27 -10
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts +4 -4
- package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js +23 -37
- package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +13 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js +93 -26
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +7 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +59 -42
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +9 -3
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js +40 -16
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts +2 -2
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js +11 -23
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -1
- package/dist/hooks/txs/mutations/useReplaceTx.d.ts +86 -0
- package/dist/hooks/txs/mutations/useReplaceTx.d.ts.map +1 -0
- package/dist/hooks/txs/mutations/useReplaceTx.js +514 -0
- package/dist/hooks/txs/mutations/useReplaceTx.js.map +1 -0
- package/dist/hooks/txs/mutations/useSendTx.d.ts +7 -2
- package/dist/hooks/txs/mutations/useSendTx.d.ts.map +1 -1
- package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
- package/dist/hooks/txs/queries/useAccountNonce.d.ts +9 -0
- package/dist/hooks/txs/queries/useAccountNonce.d.ts.map +1 -0
- package/dist/hooks/txs/queries/useAccountNonce.js +31 -0
- package/dist/hooks/txs/queries/useAccountNonce.js.map +1 -0
- package/dist/hooks/txs/queries/useTxFees.d.ts +16 -0
- package/dist/hooks/txs/queries/useTxFees.d.ts.map +1 -0
- package/dist/hooks/txs/queries/useTxFees.js +103 -0
- package/dist/hooks/txs/queries/useTxFees.js.map +1 -0
- package/dist/hooks/txs/queries/useTxHistory.d.ts.map +1 -1
- package/dist/hooks/txs/queries/useTxHistory.js +3 -2
- package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
- package/dist/hooks/txs/queries/useTxResponse.d.ts +2390 -0
- package/dist/hooks/txs/queries/useTxResponse.d.ts.map +1 -0
- package/dist/hooks/txs/queries/useTxResponse.js +75 -0
- package/dist/hooks/txs/queries/useTxResponse.js.map +1 -0
- package/dist/hooks/txs/queries/useWalletCanReplaceTx.d.ts +2 -0
- package/dist/hooks/txs/queries/useWalletCanReplaceTx.d.ts.map +1 -0
- package/dist/hooks/txs/queries/useWalletCanReplaceTx.js +30 -0
- package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/utils/index.d.ts +17 -3
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/price.d.ts +0 -1
- package/dist/lib/utils/price.d.ts.map +1 -1
- package/dist/lib/utils/price.js +2 -4
- package/dist/lib/utils/price.js.map +1 -1
- package/dist/lib/utils/toasts.d.ts +1 -2
- 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.map +1 -1
- package/dist/lib/utils/twap.js.map +1 -1
- package/dist/styles.css +12 -3
- package/dist/tokens/constants.d.ts.map +1 -1
- package/dist/tokens/constants.js +9 -9
- package/dist/tokens/constants.js.map +1 -1
- package/dist/tokens/defaultTokens.js +17 -17
- package/dist/tokens/defaultTokens.js.map +1 -1
- package/dist/tokens/lists/constants.d.ts +1 -1
- package/dist/tokens/lists/constants.d.ts.map +1 -1
- package/dist/tokens/lists/constants.js +1 -1
- package/dist/tokens/lists/constants.js.map +1 -1
- package/dist/transactions/queries/ensureEstimateFeesPerGas.d.ts +16 -0
- package/dist/transactions/queries/ensureEstimateFeesPerGas.d.ts.map +1 -0
- package/dist/transactions/queries/ensureEstimateFeesPerGas.js +23 -0
- package/dist/transactions/queries/ensureEstimateFeesPerGas.js.map +1 -0
- package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
- package/dist/transactions/queries/ensureTxResponse.d.ts +17 -0
- package/dist/transactions/queries/ensureTxResponse.d.ts.map +1 -0
- package/dist/transactions/queries/ensureTxResponse.js +23 -0
- package/dist/transactions/queries/ensureTxResponse.js.map +1 -0
- package/dist/transactions/state/hooks/useMarkTxAsDropped.d.ts +7 -0
- package/dist/transactions/state/hooks/useMarkTxAsDropped.d.ts.map +1 -0
- package/dist/transactions/state/hooks/useMarkTxAsDropped.js +10 -0
- package/dist/transactions/state/hooks/useMarkTxAsDropped.js.map +1 -0
- package/dist/transactions/state/transactionsActionAtom.d.ts +12 -0
- package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.js +40 -1
- package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
- package/dist/transactions/status.d.ts +1 -1
- package/dist/transactions/status.d.ts.map +1 -1
- package/dist/transactions/status.js +6 -0
- package/dist/transactions/status.js.map +1 -1
- package/dist/transactions/types.d.ts +15 -2
- package/dist/transactions/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/events/types/cancel.d.ts.map +0 -1
|
@@ -16,35 +16,14 @@ class DeltaOrderFailedError extends Error {
|
|
|
16
16
|
function isDeltaOrderFailedError(error) {
|
|
17
17
|
return error instanceof DeltaOrderFailedError;
|
|
18
18
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return
|
|
26
|
-
}
|
|
27
|
-
function isDeltaNoAvailablePricesError(error) {
|
|
28
|
-
if (!(error instanceof Error)) return false;
|
|
29
|
-
return error.message === "NoAvailablePrices";
|
|
30
|
-
}
|
|
31
|
-
function isDeltaUnsupportedTokenError(error) {
|
|
32
|
-
if (!(error instanceof Error)) return false;
|
|
33
|
-
return error.message === "UnsupportedToken";
|
|
34
|
-
}
|
|
35
|
-
function isDeltaNoAvailableBridgeOptionsError(error) {
|
|
36
|
-
if (!(error instanceof Error)) return false;
|
|
37
|
-
return error.message === "NoAvailableBridgeOptions";
|
|
38
|
-
}
|
|
39
|
-
function isDeltaPriceError(error) {
|
|
40
|
-
return {
|
|
41
|
-
isMaxImpactReachedError: isDeltaMaxImpactReachedError(error),
|
|
42
|
-
isNoUsdPriceError: isDeltaNoUsdPriceError(error),
|
|
43
|
-
isNoAvailablePricesError: isDeltaNoAvailablePricesError(error),
|
|
44
|
-
isUnsupportedTokenError: isDeltaUnsupportedTokenError(error),
|
|
45
|
-
isNoAvailableBridgeOptionsError: isDeltaNoAvailableBridgeOptionsError(error)
|
|
46
|
-
};
|
|
19
|
+
const DELTA_PRICE_ERROR_TYPES = /* @__PURE__ */ new Set(["MaxImpactReached", "NoUSDPriceForToken", "NoAvailablePrices", "UnsupportedToken", "NoAvailableBridgeOptions"]);
|
|
20
|
+
function getDeltaPriceErrorType(error) {
|
|
21
|
+
if (!(error instanceof Error)) return null;
|
|
22
|
+
if (DELTA_PRICE_ERROR_TYPES.has(error.message)) {
|
|
23
|
+
return error.message;
|
|
24
|
+
}
|
|
25
|
+
return null;
|
|
47
26
|
}
|
|
48
27
|
|
|
49
|
-
export { DeltaOrderFailedError,
|
|
28
|
+
export { DeltaOrderFailedError, getDeltaPriceErrorType, isDeltaOrderFailedError };
|
|
50
29
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sources":["../../../../../../src/hooks/swap/prices/delta/queries/errors.ts"],"sourcesContent":["import type { FailedDeltaAuction } from \"../orders/types\";\n\nexport class DeltaOrderFailedError extends Error {\n public readonly order: FailedDeltaAuction;\n\n public constructor({\n message,\n order,\n }: {\n message?: string;\n order: FailedDeltaAuction;\n }) {\n super(message);\n this.name = this.constructor.name;\n this.message = message || \"DeltaOrderFailed\";\n this.order = order;\n\n // Capture stack trace, excluding the constructor call\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, DeltaOrderFailedError);\n }\n }\n}\n\nexport function isDeltaOrderFailedError(\n error: unknown\n): error is DeltaOrderFailedError {\n return error instanceof DeltaOrderFailedError;\n}\n\n// ------------------------------ DeltaPrice/BridgePrice errors ------------------------------\n\n
|
|
1
|
+
{"version":3,"file":"errors.js","sources":["../../../../../../src/hooks/swap/prices/delta/queries/errors.ts"],"sourcesContent":["import type { FailedDeltaAuction } from \"../orders/types\";\n\nexport class DeltaOrderFailedError extends Error {\n public readonly order: FailedDeltaAuction;\n\n public constructor({\n message,\n order,\n }: {\n message?: string;\n order: FailedDeltaAuction;\n }) {\n super(message);\n this.name = this.constructor.name;\n this.message = message || \"DeltaOrderFailed\";\n this.order = order;\n\n // Capture stack trace, excluding the constructor call\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, DeltaOrderFailedError);\n }\n }\n}\n\nexport function isDeltaOrderFailedError(\n error: unknown\n): error is DeltaOrderFailedError {\n return error instanceof DeltaOrderFailedError;\n}\n\n// ------------------------------ DeltaPrice/BridgePrice errors ------------------------------\n\n/**\n * API error shapes (e.errorType returned as e.message in SDK):\n * - { \"errorType\": \"MaxImpactReached\", \"details\": \"Max price impact reached. Impact: 97.81%\" }\n * - { \"errorType\": \"NoUSDPriceForToken\", \"details\": \"No USD price available for token 0x6eed...\" }\n * - { \"errorType\": \"NoAvailablePrices\", \"details\": \"No available prices found\" }\n * - { \"errorType\": \"UnsupportedToken\", \"details\": \"Token 0xc4d4... is not supported\" }\n * - { \"errorType\": \"NoAvailableBridgeOptions\", \"details\": \"No available bridge options\" }\n */\nexport type DeltaPriceErrorType =\n | \"MaxImpactReached\"\n | \"NoUSDPriceForToken\"\n | \"NoAvailablePrices\"\n | \"UnsupportedToken\"\n | \"NoAvailableBridgeOptions\";\n\nconst DELTA_PRICE_ERROR_TYPES = new Set<string>([\n \"MaxImpactReached\",\n \"NoUSDPriceForToken\",\n \"NoAvailablePrices\",\n \"UnsupportedToken\",\n \"NoAvailableBridgeOptions\",\n] satisfies DeltaPriceErrorType[]);\n\nexport function getDeltaPriceErrorType(\n error: unknown\n): DeltaPriceErrorType | null {\n if (!(error instanceof Error)) return null;\n if (DELTA_PRICE_ERROR_TYPES.has(error.message)) {\n return error.message as DeltaPriceErrorType;\n }\n return null;\n}\n"],"names":["DeltaOrderFailedError","Error","order","constructor","message","name","captureStackTrace","isDeltaOrderFailedError","error","DELTA_PRICE_ERROR_TYPES","Set","getDeltaPriceErrorType","has"],"mappings":"AAEO,MAAMA,8BAA8BC,KAAAA,CAAM;AAAA,EAC/BC,KAAAA;AAAAA,EAETC,WAAAA,CAAY;AAAA,IACjBC,OAAAA;AAAAA,IACAF;AAAAA,GAIF,EAAG;AACD,IAAA,KAAA,CAAME,OAAO,CAAA;AACb,IAAA,IAAA,CAAKC,IAAAA,GAAO,KAAKF,WAAAA,CAAYE,IAAAA;AAC7B,IAAA,IAAA,CAAKD,UAAUA,OAAAA,IAAW,kBAAA;AAC1B,IAAA,IAAA,CAAKF,KAAAA,GAAQA,KAAAA;AAGb,IAAA,IAAID,MAAMK,iBAAAA,EAAmB;AAC3BL,MAAAA,KAAAA,CAAMK,iBAAAA,CAAkB,MAAMN,qBAAqB,CAAA;AAAA,IACrD;AAAA,EACF;AACF;AAEO,SAASO,wBACdC,KAAAA,EACgC;AAChC,EAAA,OAAOA,KAAAA,YAAiBR,qBAAAA;AAC1B;AAmBA,MAAMS,uBAAAA,uBAA8BC,GAAAA,CAAY,CAC9C,oBACA,oBAAA,EACA,mBAAA,EACA,kBAAA,EACA,0BAA0B,CACK,CAAA;AAE1B,SAASC,uBACdH,KAAAA,EAC4B;AAC5B,EAAA,IAAI,EAAEA,KAAAA,YAAiBP,KAAAA,CAAAA,EAAQ,OAAO,IAAA;AACtC,EAAA,IAAIQ,uBAAAA,CAAwBG,GAAAA,CAAIJ,KAAAA,CAAMJ,OAAO,CAAA,EAAG;AAC9C,IAAA,OAAOI,KAAAA,CAAMJ,OAAAA;AAAAA,EACf;AACA,EAAA,OAAO,IAAA;AACT;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { UseQueryResult } from '@tanstack/react-query';
|
|
2
2
|
import { BridgedDepositResponse } from '../bridge/types';
|
|
3
|
-
import { ExecutedDeltaAuction, FailedDeltaAuction
|
|
3
|
+
import { ExecutedDeltaAuction, FailedDeltaAuction } from '../orders/types';
|
|
4
4
|
import { DeltaAuction } from '@velora-dex/sdk';
|
|
5
5
|
declare const SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX = "single_delta_auction";
|
|
6
6
|
type SingleDeltaAuctionQueryKey = [
|
|
@@ -10,30 +10,28 @@ type SingleDeltaAuctionQueryKey = [
|
|
|
10
10
|
export declare function deltaAuctionPollingQueryKey({ orderId, }?: {
|
|
11
11
|
orderId?: string;
|
|
12
12
|
}): SingleDeltaAuctionQueryKey;
|
|
13
|
-
type UseWatchDeltaAuctionQueryInput<TData =
|
|
13
|
+
type UseWatchDeltaAuctionQueryInput<TData = DeltaAuction> = {
|
|
14
14
|
orderId?: string;
|
|
15
15
|
enabled?: boolean;
|
|
16
|
-
select?: (data:
|
|
16
|
+
select?: (data: DeltaAuction) => TData;
|
|
17
17
|
onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;
|
|
18
18
|
onAuctionFailure?: (auction: FailedDeltaAuction) => void;
|
|
19
19
|
onUpdatedAuction?: (auction: DeltaAuction) => void;
|
|
20
|
-
onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, "id">) => void;
|
|
21
20
|
};
|
|
22
|
-
export declare function useWatchDeltaAuction<TData =
|
|
23
|
-
type EnsureOrderExecutedFn<TData extends
|
|
21
|
+
export declare function useWatchDeltaAuction<TData = DeltaAuction>({ orderId, enabled, select, onAuctionSuccess, onAuctionFailure, onUpdatedAuction, }: UseWatchDeltaAuctionQueryInput<TData>): UseQueryResult<TData>;
|
|
22
|
+
type EnsureOrderExecutedFn<TData extends DeltaAuction = DeltaAuction> = (options: {
|
|
24
23
|
orderId: string;
|
|
25
24
|
signal?: AbortSignal;
|
|
26
25
|
}) => Promise<TData>;
|
|
27
|
-
export declare function useEnsureDeltaOrderExecuted<TData extends
|
|
26
|
+
export declare function useEnsureDeltaOrderExecuted<TData extends DeltaAuction = DeltaAuction>({ onAuctionSuccess, onAuctionFailure, }?: Pick<UseWatchDeltaAuctionQueryInput, "onAuctionSuccess" | "onAuctionFailure">): EnsureOrderExecutedFn<TData>;
|
|
28
27
|
type UseWatchMultiDeltaAuctions = {
|
|
29
28
|
orderIds: string[];
|
|
30
29
|
enabled?: boolean;
|
|
31
30
|
onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;
|
|
32
31
|
onAuctionFailure?: (auction: FailedDeltaAuction) => void;
|
|
33
32
|
onUpdatedAuction?: (auction: DeltaAuction) => void;
|
|
34
|
-
onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, "id">) => void;
|
|
35
33
|
};
|
|
36
|
-
export declare function useWatchMultiDeltaAuctions({ orderIds, enabled, onAuctionSuccess, onAuctionFailure, onUpdatedAuction,
|
|
34
|
+
export declare function useWatchMultiDeltaAuctions({ orderIds, enabled, onAuctionSuccess, onAuctionFailure, onUpdatedAuction, }: UseWatchMultiDeltaAuctions): UseQueryResult<DeltaAuction>[];
|
|
37
35
|
type MultiOrdersStatusCrossChainInput = {
|
|
38
36
|
orders: DeltaAuction[];
|
|
39
37
|
onAuctionSuccess?: (order: DeltaAuction) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWatchDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useWatchDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import { useQuery, useQueryClient, QueryObserver } from '@tanstack/react-query';
|
|
|
3
3
|
import { useRef, useLayoutEffect, useMemo } from 'react';
|
|
4
4
|
import { assert } from 'ts-essentials';
|
|
5
5
|
import { useDeltaSDK } from '../../../../useSDK.js';
|
|
6
|
-
import { isMetaWithTimeStart } from '../bridge/utils.js';
|
|
7
6
|
import { DeltaOrderStatusChecker, isExecutedDeltaAuction, isFailedDeltaAuction, isDeltaAuctionExpired, isCanceledDeltaAuction } from '../orders/utils.js';
|
|
8
7
|
import { getLogger, useLogger } from '../../../../../core/logger.js';
|
|
9
8
|
import { DeltaOrderFailedError } from './errors.js';
|
|
@@ -23,15 +22,13 @@ function constructDeltaAuctionPollingQueryOptions({
|
|
|
23
22
|
getAuction,
|
|
24
23
|
onUpdatedAuction,
|
|
25
24
|
onAuctionSuccess,
|
|
26
|
-
onAuctionFailure
|
|
27
|
-
onTimeoutGettingOrder
|
|
25
|
+
onAuctionFailure
|
|
28
26
|
}) {
|
|
29
27
|
const doneState = false;
|
|
30
28
|
const isMetaWithDoneState = (queryMeta) => {
|
|
31
29
|
return "doneState" in queryMeta && typeof queryMeta.doneState === "boolean";
|
|
32
30
|
};
|
|
33
31
|
const meta = {
|
|
34
|
-
startedQueryAt: Date.now(),
|
|
35
32
|
doneState
|
|
36
33
|
};
|
|
37
34
|
return {
|
|
@@ -72,19 +69,6 @@ function constructDeltaAuctionPollingQueryOptions({
|
|
|
72
69
|
return false;
|
|
73
70
|
}
|
|
74
71
|
}
|
|
75
|
-
if (maybeOrder === null && queryMeta && isMetaWithTimeStart(queryMeta)) {
|
|
76
|
-
const elapsed = Date.now() - queryMeta.startedQueryAt;
|
|
77
|
-
if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {
|
|
78
|
-
assert(orderId, "orderId is required");
|
|
79
|
-
onTimeoutGettingOrder?.({
|
|
80
|
-
id: orderId
|
|
81
|
-
});
|
|
82
|
-
if (isWithDoneState) {
|
|
83
|
-
queryMeta.doneState = true;
|
|
84
|
-
}
|
|
85
|
-
return false;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
72
|
return DELTA_ORDER_POLLING_INTERVAL;
|
|
89
73
|
},
|
|
90
74
|
enabled: !!orderId && enabled,
|
|
@@ -99,8 +83,7 @@ function useWatchDeltaAuction({
|
|
|
99
83
|
select,
|
|
100
84
|
onAuctionSuccess,
|
|
101
85
|
onAuctionFailure,
|
|
102
|
-
onUpdatedAuction
|
|
103
|
-
onTimeoutGettingOrder
|
|
86
|
+
onUpdatedAuction
|
|
104
87
|
}) {
|
|
105
88
|
const {
|
|
106
89
|
sdk
|
|
@@ -110,17 +93,15 @@ function useWatchDeltaAuction({
|
|
|
110
93
|
const callbacksRef = useRef({
|
|
111
94
|
onAuctionSuccess,
|
|
112
95
|
onAuctionFailure,
|
|
113
|
-
onUpdatedAuction
|
|
114
|
-
onTimeoutGettingOrder
|
|
96
|
+
onUpdatedAuction
|
|
115
97
|
});
|
|
116
98
|
useLayoutEffect(() => {
|
|
117
99
|
callbacksRef.current = {
|
|
118
100
|
onAuctionSuccess,
|
|
119
101
|
onAuctionFailure,
|
|
120
|
-
onUpdatedAuction
|
|
121
|
-
onTimeoutGettingOrder
|
|
102
|
+
onUpdatedAuction
|
|
122
103
|
};
|
|
123
|
-
}, [onAuctionSuccess, onAuctionFailure, onUpdatedAuction
|
|
104
|
+
}, [onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);
|
|
124
105
|
const queryOptions = useMemo(() => {
|
|
125
106
|
return constructDeltaAuctionPollingQueryOptions({
|
|
126
107
|
orderId,
|
|
@@ -129,8 +110,7 @@ function useWatchDeltaAuction({
|
|
|
129
110
|
getAuction: sdk.getDeltaOrderById,
|
|
130
111
|
onUpdatedAuction: callbacksRef.current.onUpdatedAuction,
|
|
131
112
|
onAuctionSuccess: callbacksRef.current.onAuctionSuccess,
|
|
132
|
-
onAuctionFailure: callbacksRef.current.onAuctionFailure
|
|
133
|
-
onTimeoutGettingOrder: callbacksRef.current.onTimeoutGettingOrder
|
|
113
|
+
onAuctionFailure: callbacksRef.current.onAuctionFailure
|
|
134
114
|
});
|
|
135
115
|
}, [orderId, enabled, select, sdk.getDeltaOrderById]);
|
|
136
116
|
return useQuery(queryOptions);
|
|
@@ -180,7 +160,6 @@ function useEnsureDeltaOrderExecuted(t0) {
|
|
|
180
160
|
});
|
|
181
161
|
const observer = new QueryObserver(queryClient, queryOptions);
|
|
182
162
|
const promise = new Promise((resolve, reject) => {
|
|
183
|
-
const startedQueryAt = Date.now();
|
|
184
163
|
let timeout = setTimeout(() => {
|
|
185
164
|
logger.log("QueryObserver", queryKey, "timeout");
|
|
186
165
|
unsubscribe();
|
|
@@ -220,14 +199,6 @@ function useEnsureDeltaOrderExecuted(t0) {
|
|
|
220
199
|
return;
|
|
221
200
|
}
|
|
222
201
|
}
|
|
223
|
-
if (maybeOrder === null) {
|
|
224
|
-
const elapsed = Date.now() - startedQueryAt;
|
|
225
|
-
if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {
|
|
226
|
-
cleanup();
|
|
227
|
-
reject(new Error(`Order ${orderId} not found`));
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
202
|
if (result.error) {
|
|
232
203
|
cleanup();
|
|
233
204
|
reject(result.error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWatchDeltaOrder.js","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 isMetaWithTimeStart,\n type BridgedDepositResponseFailure,\n type BridgedDepositResponseSuccess,\n type GetBridgedDepositStatusInput,\n type RefetchMetaWithTiming,\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 {\n ExecutedDeltaAuction,\n FailedDeltaAuction,\n NullableDeltaAuction,\n} from \"../orders/types\";\nimport { getLogger, useLogger } from \"@/core/logger\";\nimport { DeltaOrderFailedError } from \"./errors\";\nimport type { DeltaAuction } 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 = NullableDeltaAuction> =\n UseQueryOptions<\n NullableDeltaAuction,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n >;\n\nconst DELTA_ORDER_POLLING_INTERVAL = 3_000;\n\ntype ConstructDeltaAuctionPollingQueryOptionsInput<\n TData = NullableDeltaAuction,\n> = {\n orderId?: string;\n enabled?: boolean;\n select?: (data: NullableDeltaAuction) => TData;\n getAuction(\n orderId: string,\n requestParams: { signal?: AbortSignal }\n ): Promise<NullableDeltaAuction>;\n} & Pick<\n UseWatchMultiDeltaAuctions,\n | \"onAuctionSuccess\"\n | \"onAuctionFailure\"\n | \"onUpdatedAuction\"\n | \"onTimeoutGettingOrder\"\n>;\n\nconst LOOK_FOR_ORDER_TIMEOUT = 60_000;\n\nfunction constructDeltaAuctionPollingQueryOptions<\n TData = NullableDeltaAuction,\n>({\n orderId,\n enabled = true,\n select,\n getAuction,\n onUpdatedAuction,\n onAuctionSuccess,\n onAuctionFailure,\n onTimeoutGettingOrder,\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 // including startedQueryAt\n const meta: RefetchMetaWithTiming & {\n doneState: boolean;\n } = {\n startedQueryAt: Date.now(),\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 if (maybeOrder === null && queryMeta && isMetaWithTimeStart(queryMeta)) {\n // no Order for this orderId for a long time\n const elapsed = Date.now() - queryMeta.startedQueryAt;\n if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {\n assert(orderId, \"orderId is required\");\n onTimeoutGettingOrder?.({ id: orderId });\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling after 1 minute\n }\n }\n\n return DELTA_ORDER_POLLING_INTERVAL; // default interval for both crosschain and singlechain Orders\n },\n enabled: !!orderId && enabled,\n select,\n };\n}\n\n// ----------------- Single Delta Query -----------------------------------\n\ntype UseWatchDeltaAuctionQueryInput<TData = NullableDeltaAuction> = {\n orderId?: string;\n enabled?: boolean;\n select?: (data: NullableDeltaAuction) => TData;\n onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;\n onAuctionFailure?: (auction: FailedDeltaAuction) => void;\n onUpdatedAuction?: (auction: DeltaAuction) => void;\n onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, \"id\">) => void;\n};\n\nexport function useWatchDeltaAuction<TData = NullableDeltaAuction>({\n orderId,\n enabled = true,\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 onTimeoutGettingOrder,\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 onTimeoutGettingOrder,\n });\n\n useLayoutEffect(() => {\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n };\n }, [\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n ]);\n\n const queryOptions = useMemo(() => {\n /* eslint-disable react-hooks/refs */\n return constructDeltaAuctionPollingQueryOptions<TData>({\n orderId,\n enabled,\n select,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacksRef.current.onUpdatedAuction,\n onAuctionSuccess: callbacksRef.current.onAuctionSuccess,\n onAuctionFailure: callbacksRef.current.onAuctionFailure,\n onTimeoutGettingOrder: callbacksRef.current.onTimeoutGettingOrder,\n });\n /* eslint-enable react-hooks/refs */\n }, [orderId, enabled, select, sdk.getDeltaOrderById]);\n\n return useQuery<\n NullableDeltaAuction,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n >(queryOptions);\n}\n\ntype EnsureOrderExecutedFn<\n TData extends NullableDeltaAuction = NullableDeltaAuction,\n> = (options: { orderId: string; signal?: AbortSignal }) => Promise<TData>;\n\nexport function useEnsureDeltaOrderExecuted<\n TData extends NullableDeltaAuction = NullableDeltaAuction,\n>({\n onAuctionSuccess,\n onAuctionFailure,\n}: Pick<\n UseWatchDeltaAuctionQueryInput,\n \"onAuctionSuccess\" | \"onAuctionFailure\"\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 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 const startedQueryAt = Date.now();\n\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 // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(maybeOrder)) {\n onAuctionSuccess?.(maybeOrder);\n cleanup();\n resolve(maybeOrder);\n return;\n }\n if (\n isFailedDeltaAuction(maybeOrder) ||\n isDeltaAuctionExpired(maybeOrder) ||\n isCanceledDeltaAuction(maybeOrder)\n ) {\n onAuctionFailure?.(maybeOrder);\n cleanup();\n reject(\n new DeltaOrderFailedError({\n order: maybeOrder,\n })\n );\n return;\n }\n }\n\n if (maybeOrder === null) {\n // no Order for this orderId for a long time\n const elapsed = Date.now() - startedQueryAt;\n if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {\n cleanup();\n reject(new Error(`Order ${orderId} not found`));\n return;\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 onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, \"id\">) => void;\n};\n\nexport function useWatchMultiDeltaAuctions({\n orderIds,\n enabled = true,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n}: UseWatchMultiDeltaAuctions): UseQueryResult<NullableDeltaAuction>[] {\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const callbacksRef = useRef({\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n });\n\n useLayoutEffect(() => {\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n };\n }, [\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n ]);\n\n const queries = useMemo<UseDeltaAuctionQueryOptions<NullableDeltaAuction>[]>(\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 onTimeoutGettingOrder: callbacksRef.current.onTimeoutGettingOrder,\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\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"],"names":["SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX","deltaAuctionPollingQueryKey","orderId","DELTA_ORDER_POLLING_INTERVAL","LOOK_FOR_ORDER_TIMEOUT","constructDeltaAuctionPollingQueryOptions","enabled","select","getAuction","onUpdatedAuction","onAuctionSuccess","onAuctionFailure","onTimeoutGettingOrder","doneState","isMetaWithDoneState","queryMeta","meta","startedQueryAt","Date","now","queryKey","queryFn","signal","assert","refetchInterval","query","maybeOrder","state","data","options","isWithDoneState","getLogger","log","DeltaOrderStatusChecker","completed","has","status","isExecutedDeltaAuction","isFailedDeltaAuction","isDeltaAuctionExpired","isCanceledDeltaAuction","isMetaWithTimeStart","elapsed","id","useWatchDeltaAuction","sdk","useDeltaSDK","chainId","callbacksRef","useRef","useLayoutEffect","current","queryOptions","useMemo","getDeltaOrderById","useQuery","useEnsureDeltaOrderExecuted","t0","$","_c","t1","undefined","queryClient","useQueryClient","logger","useLogger","t2","Symbol","for","t3","t4","observer","QueryObserver","promise","Promise","resolve","reject","timeout","setTimeout","unsubscribe","Error","addEventListener","clearTimeout","reason","subscribe","result","cleanup","DeltaOrderFailedError","order","error","ensureOrderSent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useWatchDeltaOrder.js","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 {\n ExecutedDeltaAuction,\n FailedDeltaAuction,\n} from \"../orders/types\";\nimport { getLogger, useLogger } from \"@/core/logger\";\nimport { DeltaOrderFailedError } from \"./errors\";\nimport type { DeltaAuction } 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> =\n UseQueryOptions<\n DeltaAuction,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n >;\n\nconst DELTA_ORDER_POLLING_INTERVAL = 3_000;\n\ntype ConstructDeltaAuctionPollingQueryOptionsInput<\n TData = DeltaAuction,\n> = {\n orderId?: string;\n enabled?: boolean;\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<\n TData = DeltaAuction,\n>({\n orderId,\n enabled = true,\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 DELTA_ORDER_POLLING_INTERVAL; // default interval for both crosschain and singlechain Orders\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 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 // 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 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, select, sdk.getDeltaOrderById]);\n\n return useQuery<\n DeltaAuction,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n >(queryOptions);\n}\n\ntype EnsureOrderExecutedFn<\n TData extends DeltaAuction = DeltaAuction,\n> = (options: { orderId: string; signal?: AbortSignal }) => Promise<TData>;\n\nexport function useEnsureDeltaOrderExecuted<\n TData extends DeltaAuction = DeltaAuction,\n>({\n onAuctionSuccess,\n onAuctionFailure,\n}: Pick<\n UseWatchDeltaAuctionQueryInput,\n \"onAuctionSuccess\" | \"onAuctionFailure\"\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 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 // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(maybeOrder)) {\n onAuctionSuccess?.(maybeOrder);\n cleanup();\n resolve(maybeOrder);\n return;\n }\n if (\n isFailedDeltaAuction(maybeOrder) ||\n isDeltaAuctionExpired(maybeOrder) ||\n isCanceledDeltaAuction(maybeOrder)\n ) {\n onAuctionFailure?.(maybeOrder);\n cleanup();\n reject(\n new DeltaOrderFailedError({\n order: maybeOrder,\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\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"],"names":["SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX","deltaAuctionPollingQueryKey","orderId","DELTA_ORDER_POLLING_INTERVAL","LOOK_FOR_ORDER_TIMEOUT","constructDeltaAuctionPollingQueryOptions","enabled","select","getAuction","onUpdatedAuction","onAuctionSuccess","onAuctionFailure","doneState","isMetaWithDoneState","queryMeta","meta","queryKey","queryFn","signal","assert","refetchInterval","query","maybeOrder","state","data","options","isWithDoneState","getLogger","log","DeltaOrderStatusChecker","completed","has","status","isExecutedDeltaAuction","isFailedDeltaAuction","isDeltaAuctionExpired","isCanceledDeltaAuction","useWatchDeltaAuction","sdk","useDeltaSDK","chainId","callbacksRef","useRef","useLayoutEffect","current","queryOptions","useMemo","getDeltaOrderById","useQuery","useEnsureDeltaOrderExecuted","t0","$","_c","t1","undefined","queryClient","useQueryClient","logger","useLogger","t2","Symbol","for","t3","t4","observer","QueryObserver","promise","Promise","resolve","reject","timeout","setTimeout","unsubscribe","Error","addEventListener","clearTimeout","reason","subscribe","result","cleanup","DeltaOrderFailedError","order","error","ensureOrderSent"],"mappings":"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"}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { Hash } from 'viem';
|
|
2
2
|
import { TransactionParams } from '@velora-dex/sdk';
|
|
3
3
|
import { UseSendArbitraryTxReturn } from '../../../../txs/mutations/useSendTx';
|
|
4
|
+
import { SupportedChainId } from '../../../../../lib/web3/wagmi/types';
|
|
4
5
|
type UseSendMarketSwapTxInput = {
|
|
5
6
|
onSuccess?: (hash: Hash) => void;
|
|
6
7
|
onError?: (error: Error) => void;
|
|
7
8
|
};
|
|
9
|
+
type TxParamsWithChainId = TransactionParams & {
|
|
10
|
+
chainId: SupportedChainId;
|
|
11
|
+
};
|
|
8
12
|
type UseSendMarketSwapTxReturn = Omit<UseSendArbitraryTxReturn, "sendTransaction" | "sendTransactionAsync"> & {
|
|
9
|
-
sendTransaction: (txParams:
|
|
10
|
-
sendTransactionAsync: (txParams:
|
|
13
|
+
sendTransaction: (txParams: TxParamsWithChainId) => void;
|
|
14
|
+
sendTransactionAsync: (txParams: TxParamsWithChainId) => Promise<Hash>;
|
|
11
15
|
};
|
|
12
16
|
export declare const useSendMarketSwapTx: ({ onSuccess, onError, }: UseSendMarketSwapTxInput) => UseSendMarketSwapTxReturn;
|
|
13
17
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSendMarketSwapTx.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/market/mutations/useSendMarketSwapTx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"useSendMarketSwapTx.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/market/mutations/useSendMarketSwapTx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,KAAK,wBAAwB,GAAG;IAC9B,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,KAAK,mBAAmB,GAAG,iBAAiB,GAAG;IAC7C,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAEF,KAAK,yBAAyB,GAAG,IAAI,CACnC,wBAAwB,EACxB,iBAAiB,GAAG,sBAAsB,CAC3C,GAAG;IACF,eAAe,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACzD,oBAAoB,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,yBAGjC,wBAAwB,KAAG,yBAuC7B,CAAC"}
|
|
@@ -34,7 +34,10 @@ const useSendMarketSwapTx = (t0) => {
|
|
|
34
34
|
let t2;
|
|
35
35
|
if ($[3] !== _sendTransaction) {
|
|
36
36
|
t2 = (txParams) => {
|
|
37
|
-
_sendTransaction(
|
|
37
|
+
_sendTransaction({
|
|
38
|
+
...txParamsToViemTxParams(txParams),
|
|
39
|
+
chainId: txParams.chainId
|
|
40
|
+
});
|
|
38
41
|
};
|
|
39
42
|
$[3] = _sendTransaction;
|
|
40
43
|
$[4] = t2;
|
|
@@ -44,7 +47,10 @@ const useSendMarketSwapTx = (t0) => {
|
|
|
44
47
|
const sendTransaction = t2;
|
|
45
48
|
let t3;
|
|
46
49
|
if ($[5] !== _sendTransactionAsync) {
|
|
47
|
-
t3 = (txParams_0) => _sendTransactionAsync(
|
|
50
|
+
t3 = (txParams_0) => _sendTransactionAsync({
|
|
51
|
+
...txParamsToViemTxParams(txParams_0),
|
|
52
|
+
chainId: txParams_0.chainId
|
|
53
|
+
});
|
|
48
54
|
$[5] = _sendTransactionAsync;
|
|
49
55
|
$[6] = t3;
|
|
50
56
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSendMarketSwapTx.js","sources":["../../../../../../src/hooks/swap/prices/market/mutations/useSendMarketSwapTx.ts"],"sourcesContent":["import { type Hash } from \"viem\";\nimport {\n txParamsToViemTxParams,\n type TransactionParams,\n} from \"@velora-dex/sdk\";\nimport {\n useSendArbitraryTx,\n type UseSendArbitraryTxReturn,\n} from \"@/hooks/txs/mutations/useSendTx\";\n\ntype UseSendMarketSwapTxInput = {\n onSuccess?: (hash: Hash) => void;\n onError?: (error: Error) => void;\n};\n\ntype UseSendMarketSwapTxReturn = Omit<\n UseSendArbitraryTxReturn,\n \"sendTransaction\" | \"sendTransactionAsync\"\n> & {\n sendTransaction: (txParams:
|
|
1
|
+
{"version":3,"file":"useSendMarketSwapTx.js","sources":["../../../../../../src/hooks/swap/prices/market/mutations/useSendMarketSwapTx.ts"],"sourcesContent":["import { type Hash } from \"viem\";\nimport {\n txParamsToViemTxParams,\n type TransactionParams,\n} from \"@velora-dex/sdk\";\nimport {\n useSendArbitraryTx,\n type UseSendArbitraryTxReturn,\n} from \"@/hooks/txs/mutations/useSendTx\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype UseSendMarketSwapTxInput = {\n onSuccess?: (hash: Hash) => void;\n onError?: (error: Error) => void;\n};\n\ntype TxParamsWithChainId = TransactionParams & {\n chainId: SupportedChainId;\n};\n\ntype UseSendMarketSwapTxReturn = Omit<\n UseSendArbitraryTxReturn,\n \"sendTransaction\" | \"sendTransactionAsync\"\n> & {\n sendTransaction: (txParams: TxParamsWithChainId) => void;\n sendTransactionAsync: (txParams: TxParamsWithChainId) => Promise<Hash>;\n};\n\nexport const useSendMarketSwapTx = ({\n onSuccess,\n onError,\n}: UseSendMarketSwapTxInput): UseSendMarketSwapTxReturn => {\n const {\n sendTransaction: _sendTransaction,\n sendTransactionAsync: _sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n } = useSendArbitraryTx({\n onSuccess,\n onError,\n });\n\n const sendTransaction = (txParams: TxParamsWithChainId) => {\n _sendTransaction({\n ...txParamsToViemTxParams(txParams),\n chainId: txParams.chainId,\n });\n };\n\n const sendTransactionAsync = (txParams: TxParamsWithChainId) => {\n return _sendTransactionAsync({\n ...txParamsToViemTxParams(txParams),\n chainId: txParams.chainId,\n });\n };\n\n return {\n sendTransaction,\n sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n };\n};\n"],"names":["useSendMarketSwapTx","t0","$","_c","onSuccess","onError","t1","sendTransaction","_sendTransaction","sendTransactionAsync","_sendTransactionAsync","isPending","isSuccess","isError","error","txHash","reset","useSendArbitraryTx","t2","txParams","txParamsToViemTxParams","chainId","t3","txParams_0","t4"],"mappings":"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"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import { d as distExports } from '../../../_virtual/index.js';
|
|
2
|
+
import '../../useSDK.js';
|
|
3
|
+
import '@tanstack/react-pacer/debouncer';
|
|
4
|
+
import '@tanstack/react-query';
|
|
5
|
+
import 'react';
|
|
6
|
+
import 'ts-essentials';
|
|
7
|
+
import { DEGEN_MODE_MAX_IMPACT } from './constants.js';
|
|
2
8
|
import { useAtomValue } from '../../../core/store.js';
|
|
3
9
|
import { useAccount } from 'wagmi';
|
|
4
10
|
import { useTokenTaxFee } from '../../tokens/useTokenTaxFee.js';
|
|
@@ -7,7 +13,6 @@ import { tradeModeToTokenAtoms, tradeModeToPayAmountWeiAtom, tradeModeToReceiveA
|
|
|
7
13
|
import { useSwapReceiverAddressValue } from '../../../components/widget/ReceiverAddress/state/receiverAddressAtom.js';
|
|
8
14
|
import { excludeBridgesAtom } from '../../../components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js';
|
|
9
15
|
import { useDegenMode } from '../../../components/widget/TradeParameters/state/degenModeParamAtom.js';
|
|
10
|
-
import { DEGEN_MODE_MAX_IMPACT } from './constants.js';
|
|
11
16
|
|
|
12
17
|
function usePricesParams(tradeMode) {
|
|
13
18
|
const $ = distExports.c(28);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePricesParams.js","sources":["../../../../src/hooks/swap/prices/usePricesParams.ts"],"sourcesContent":["import { type RateParamsInput } from \"./market/queries/useMarketPriceQuery\";\n\nimport { useAtomValue } from \"@/core/store\";\nimport { useAccount } from \"wagmi\";\nimport type { MarkOptional, MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useTokenTaxFee } from \"@/hooks/tokens/useTokenTaxFee\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport {\n tradeModeToPayAmountWeiAtom,\n tradeModeToReceiveAmountWeiAtom,\n tradeModeToSideAtom,\n tradeModeToTokenAtoms,\n} from \"@/core/inputs/state/common\";\nimport { useSwapReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { excludeBridgesAtom } from \"@/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom\";\nimport { useDegenMode } from \"@/components/widget/TradeParameters/state/degenModeParamAtom\";\nimport type { Address } from \"viem\";\nimport { DEGEN_MODE_MAX_IMPACT } from \"./constants\";\n\nexport type FetchPriceParams = MarkRequired<\n MarkOptional<\n Pick<\n RateParamsInput,\n | \"srcToken\"\n | \"destToken\"\n | \"amount\"\n | \"userAddress\"\n | \"side\"\n | \"srcDecimals\"\n | \"destDecimals\"\n | \"partner\"\n | \"ignoreBadUsdPrice\"\n | \"srcTokenDexTransferFee\"\n | \"destTokenDexTransferFee\"\n | \"otherExchangePrices\"\n | \"partnerFeeBps\"\n | \"maxImpact\"\n | \"degenMode\"\n >,\n \"destToken\"\n >,\n \"srcDecimals\" | \"side\"\n>;\n// @TODO add other params from options:\n// exclude* for Safe if still needed, or if we want to allow exluding DEXs like in UI\n\nexport function usePricesParams(tradeMode: TradeMode): {\n priceParams: FetchPriceParams;\n isCrossChain: boolean;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n} {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const fromToken = useAtomValue(tokenFromAtom);\n const toToken = useAtomValue(tokenToAtom);\n\n const payAmountWeiAtom = tradeModeToPayAmountWeiAtom[tradeMode];\n const receiveAmountWeiAtom = tradeModeToReceiveAmountWeiAtom[tradeMode];\n\n const payAmountWei = useAtomValue(payAmountWeiAtom);\n const receiveAmountWei = useAtomValue(receiveAmountWeiAtom) ?? \"0\";\n\n const { data: fromTokenTaxFee } = useTokenTaxFee({\n tokenAddress: fromToken.address,\n chainId: fromToken.network,\n });\n\n const { data: toTokenTaxFee } = useTokenTaxFee({\n tokenAddress: toToken?.address,\n chainId: toToken?.network,\n });\n\n const srcTokenDexTransferFee = fromTokenTaxFee?.sellTax?.toString();\n const destTokenDexTransferFee = toTokenTaxFee?.buyTax?.toString();\n\n const { address } = useAccount();\n\n const { partner, partnerFeeBps } = usePartner();\n const degenMode = useDegenMode();\n\n const isCrossChain = !!toToken && fromToken.network !== toToken.network;\n\n const sideAtom = tradeModeToSideAtom[tradeMode];\n const side = useAtomValue(sideAtom);\n\n const amount = side === \"SELL\" ? payAmountWei : receiveAmountWei;\n\n const priceParams: FetchPriceParams = {\n srcToken: fromToken.address,\n destToken: toToken?.address,\n srcDecimals: fromToken.decimals,\n destDecimals: toToken?.decimals,\n side,\n amount,\n userAddress: address,\n partner,\n partnerFeeBps,\n srcTokenDexTransferFee,\n destTokenDexTransferFee,\n otherExchangePrices: true,\n };\n\n // Degen Mode:\n // set maxImpact=DEGEN_MODE_MAX_IMPACT to bypass ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\n // set ignoreBadUsdPrice=true to allow tokens without USD price data\n // set degenMode=true for tracing\n if (degenMode) {\n priceParams.maxImpact = DEGEN_MODE_MAX_IMPACT;\n priceParams.ignoreBadUsdPrice = true;\n priceParams.degenMode = true;\n }\n\n return {\n priceParams,\n isCrossChain,\n chainId: fromToken.network,\n destChainId: isCrossChain ? toToken?.network : undefined,\n };\n}\n\nexport function useExtraDeltaPriceParams(): {\n excludeBridges?: string[];\n beneficiary?: Address;\n} {\n // excluded bridges from user preferences\n const excludeBridges = useAtomValue(excludeBridgesAtom);\n // receiver address from user input\n const receiverAddress = useSwapReceiverAddressValue();\n\n return {\n excludeBridges,\n beneficiary: receiverAddress,\n };\n}\n"],"names":["usePricesParams","tradeMode","$","_c","tokenFromAtom","tokenToAtom","tradeModeToTokenAtoms","fromToken","useAtomValue","toToken","payAmountWeiAtom","tradeModeToPayAmountWeiAtom","receiveAmountWeiAtom","tradeModeToReceiveAmountWeiAtom","payAmountWei","receiveAmountWei","t0","address","network","tokenAddress","chainId","data","fromTokenTaxFee","useTokenTaxFee","t1","t2","t3","toTokenTaxFee","t4","sellTax","toString","srcTokenDexTransferFee","t5","buyTax","destTokenDexTransferFee","useAccount","partner","partnerFeeBps","usePartner","degenMode","useDegenMode","isCrossChain","sideAtom","tradeModeToSideAtom","side","amount","t6","t7","decimals","priceParams","srcToken","destToken","srcDecimals","destDecimals","userAddress","otherExchangePrices","maxImpact","DEGEN_MODE_MAX_IMPACT","ignoreBadUsdPrice","t8","undefined","t9","destChainId","useExtraDeltaPriceParams","excludeBridges","excludeBridgesAtom","receiverAddress","useSwapReceiverAddressValue","beneficiary"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"usePricesParams.js","sources":["../../../../src/hooks/swap/prices/usePricesParams.ts"],"sourcesContent":["import { type RateParamsInput } from \"./market/queries/useMarketPriceQuery\";\n\nimport { useAtomValue } from \"@/core/store\";\nimport { useAccount } from \"wagmi\";\nimport type { MarkOptional, MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useTokenTaxFee } from \"@/hooks/tokens/useTokenTaxFee\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport {\n tradeModeToPayAmountWeiAtom,\n tradeModeToReceiveAmountWeiAtom,\n tradeModeToSideAtom,\n tradeModeToTokenAtoms,\n} from \"@/core/inputs/state/common\";\nimport { useSwapReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { excludeBridgesAtom } from \"@/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom\";\nimport { useDegenMode } from \"@/components/widget/TradeParameters/state/degenModeParamAtom\";\nimport type { Address } from \"viem\";\nimport { DEGEN_MODE_MAX_IMPACT } from \"./constants\";\n\nexport type FetchPriceParams = MarkRequired<\n MarkOptional<\n Pick<\n RateParamsInput,\n | \"srcToken\"\n | \"destToken\"\n | \"amount\"\n | \"userAddress\"\n | \"side\"\n | \"srcDecimals\"\n | \"destDecimals\"\n | \"partner\"\n | \"ignoreBadUsdPrice\"\n | \"srcTokenDexTransferFee\"\n | \"destTokenDexTransferFee\"\n | \"otherExchangePrices\"\n | \"partnerFeeBps\"\n | \"maxImpact\"\n | \"degenMode\"\n >,\n \"destToken\"\n >,\n \"srcDecimals\" | \"side\"\n>;\n// @TODO add other params from options:\n// exclude* for Safe if still needed, or if we want to allow exluding DEXs like in UI\n\nexport function usePricesParams(tradeMode: TradeMode): {\n priceParams: FetchPriceParams;\n isCrossChain: boolean;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n} {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const fromToken = useAtomValue(tokenFromAtom);\n const toToken = useAtomValue(tokenToAtom);\n\n const payAmountWeiAtom = tradeModeToPayAmountWeiAtom[tradeMode];\n const receiveAmountWeiAtom = tradeModeToReceiveAmountWeiAtom[tradeMode];\n\n const payAmountWei = useAtomValue(payAmountWeiAtom);\n const receiveAmountWei = useAtomValue(receiveAmountWeiAtom) ?? \"0\";\n\n const { data: fromTokenTaxFee } = useTokenTaxFee({\n tokenAddress: fromToken.address,\n chainId: fromToken.network,\n });\n\n const { data: toTokenTaxFee } = useTokenTaxFee({\n tokenAddress: toToken?.address,\n chainId: toToken?.network,\n });\n\n const srcTokenDexTransferFee = fromTokenTaxFee?.sellTax?.toString();\n const destTokenDexTransferFee = toTokenTaxFee?.buyTax?.toString();\n\n const { address } = useAccount();\n\n const { partner, partnerFeeBps } = usePartner();\n const degenMode = useDegenMode();\n\n const isCrossChain = !!toToken && fromToken.network !== toToken.network;\n\n const sideAtom = tradeModeToSideAtom[tradeMode];\n const side = useAtomValue(sideAtom);\n\n const amount = side === \"SELL\" ? payAmountWei : receiveAmountWei;\n\n const priceParams: FetchPriceParams = {\n srcToken: fromToken.address,\n destToken: toToken?.address,\n srcDecimals: fromToken.decimals,\n destDecimals: toToken?.decimals,\n side,\n amount,\n userAddress: address,\n partner,\n partnerFeeBps,\n srcTokenDexTransferFee,\n destTokenDexTransferFee,\n otherExchangePrices: true,\n };\n\n // Degen Mode:\n // set maxImpact=DEGEN_MODE_MAX_IMPACT to bypass ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\n // set ignoreBadUsdPrice=true to allow tokens without USD price data\n // set degenMode=true for tracing\n if (degenMode) {\n priceParams.maxImpact = DEGEN_MODE_MAX_IMPACT;\n priceParams.ignoreBadUsdPrice = true;\n priceParams.degenMode = true;\n }\n\n return {\n priceParams,\n isCrossChain,\n chainId: fromToken.network,\n destChainId: isCrossChain ? toToken?.network : undefined,\n };\n}\n\nexport function useExtraDeltaPriceParams(): {\n excludeBridges?: string[];\n beneficiary?: Address;\n} {\n // excluded bridges from user preferences\n const excludeBridges = useAtomValue(excludeBridgesAtom);\n // receiver address from user input\n const receiverAddress = useSwapReceiverAddressValue();\n\n return {\n excludeBridges,\n beneficiary: receiverAddress,\n };\n}\n"],"names":["usePricesParams","tradeMode","$","_c","tokenFromAtom","tokenToAtom","tradeModeToTokenAtoms","fromToken","useAtomValue","toToken","payAmountWeiAtom","tradeModeToPayAmountWeiAtom","receiveAmountWeiAtom","tradeModeToReceiveAmountWeiAtom","payAmountWei","receiveAmountWei","t0","address","network","tokenAddress","chainId","data","fromTokenTaxFee","useTokenTaxFee","t1","t2","t3","toTokenTaxFee","t4","sellTax","toString","srcTokenDexTransferFee","t5","buyTax","destTokenDexTransferFee","useAccount","partner","partnerFeeBps","usePartner","degenMode","useDegenMode","isCrossChain","sideAtom","tradeModeToSideAtom","side","amount","t6","t7","decimals","priceParams","srcToken","destToken","srcDecimals","destDecimals","userAddress","otherExchangePrices","maxImpact","DEGEN_MODE_MAX_IMPACT","ignoreBadUsdPrice","t8","undefined","t9","destChainId","useExtraDeltaPriceParams","excludeBridges","excludeBridgesAtom","receiverAddress","useSwapReceiverAddressValue","beneficiary"],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import { getSwapSideFromDeltaPrice } from './delta/orders/utils.js';
|
|
|
12
12
|
import { useSelectedBridgePrice } from './delta/bridge/useSelectedBridgePrice.js';
|
|
13
13
|
import { PRICE_REFETCH_INTERVAL_MS } from './constants.js';
|
|
14
14
|
import 'big.js';
|
|
15
|
-
import {
|
|
15
|
+
import { getDeltaPriceErrorType } from './delta/queries/errors.js';
|
|
16
16
|
import { isMarketPriceImpactError, isMarketBadUsdPriceError, isMarketNoLiquidityError } from './market/queries/errors.js';
|
|
17
17
|
import { getPriceImpactFromPriceFactory } from './factory.js';
|
|
18
18
|
|
|
@@ -426,28 +426,28 @@ function useCurrentSwapPriceError(t0) {
|
|
|
426
426
|
} = useCurrentSwapPrice(params);
|
|
427
427
|
let t2;
|
|
428
428
|
if ($[2] !== cachedError) {
|
|
429
|
-
t2 =
|
|
429
|
+
t2 = getDeltaPriceErrorType(cachedError);
|
|
430
430
|
$[2] = cachedError;
|
|
431
431
|
$[3] = t2;
|
|
432
432
|
} else {
|
|
433
433
|
t2 = $[3];
|
|
434
434
|
}
|
|
435
|
-
const
|
|
435
|
+
const deltaPriceErrorType = t2;
|
|
436
436
|
let t3;
|
|
437
|
-
if ($[4] !== cachedError || $[5] !==
|
|
438
|
-
t3 = isMarketPriceImpactError(cachedError) ||
|
|
437
|
+
if ($[4] !== cachedError || $[5] !== deltaPriceErrorType) {
|
|
438
|
+
t3 = isMarketPriceImpactError(cachedError) || deltaPriceErrorType === "MaxImpactReached";
|
|
439
439
|
$[4] = cachedError;
|
|
440
|
-
$[5] =
|
|
440
|
+
$[5] = deltaPriceErrorType;
|
|
441
441
|
$[6] = t3;
|
|
442
442
|
} else {
|
|
443
443
|
t3 = $[6];
|
|
444
444
|
}
|
|
445
445
|
const isMaxImpactReachedError = t3;
|
|
446
446
|
let t4;
|
|
447
|
-
if ($[7] !== cachedError || $[8] !==
|
|
448
|
-
t4 = isMarketBadUsdPriceError(cachedError) ||
|
|
447
|
+
if ($[7] !== cachedError || $[8] !== deltaPriceErrorType) {
|
|
448
|
+
t4 = isMarketBadUsdPriceError(cachedError) || deltaPriceErrorType === "NoUSDPriceForToken";
|
|
449
449
|
$[7] = cachedError;
|
|
450
|
-
$[8] =
|
|
450
|
+
$[8] = deltaPriceErrorType;
|
|
451
451
|
$[9] = t4;
|
|
452
452
|
} else {
|
|
453
453
|
t4 = $[9];
|
|
@@ -462,9 +462,9 @@ function useCurrentSwapPriceError(t0) {
|
|
|
462
462
|
t5 = $[11];
|
|
463
463
|
}
|
|
464
464
|
const isNoLiquidityError = t5;
|
|
465
|
-
const isDeltaNoAvailablePricesError =
|
|
466
|
-
const isDeltaUnsupportedTokenError =
|
|
467
|
-
const isDeltaNoAvailableBridgeOptionsError =
|
|
465
|
+
const isDeltaNoAvailablePricesError = deltaPriceErrorType === "NoAvailablePrices";
|
|
466
|
+
const isDeltaUnsupportedTokenError = deltaPriceErrorType === "UnsupportedToken";
|
|
467
|
+
const isDeltaNoAvailableBridgeOptionsError = deltaPriceErrorType === "NoAvailableBridgeOptions";
|
|
468
468
|
let t6;
|
|
469
469
|
if ($[12] !== cachedError || $[13] !== getPriceImpact || $[14] !== isDeltaNoAvailableBridgeOptionsError || $[15] !== isDeltaNoAvailablePricesError || $[16] !== isDeltaUnsupportedTokenError || $[17] !== isMaxImpactReachedError || $[18] !== isNoLiquidityError || $[19] !== isNoUsdPriceError || $[20] !== price || $[21] !== priceMode) {
|
|
470
470
|
t6 = {
|