@velora-dex/widget 0.4.13 → 0.4.14-dev.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ui/button.d.ts +1 -1
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/button.js +1 -0
- package/dist/components/ui/button.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
- 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 +2 -1
- package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js +2 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +44 -26
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/Duration/Duration.d.ts +1 -1
- package/dist/components/widget/Duration/Duration.d.ts.map +1 -1
- package/dist/components/widget/Duration/Duration.js +1 -4
- package/dist/components/widget/Duration/Duration.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +2 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +9 -7
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.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 +2 -2
- package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/utils.js +25 -9
- package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
- package/dist/components/widget/NumberInput/NumberInput.d.ts +18 -0
- package/dist/components/widget/NumberInput/NumberInput.d.ts.map +1 -0
- package/dist/components/widget/NumberInput/NumberInput.js +255 -0
- package/dist/components/widget/NumberInput/NumberInput.js.map +1 -0
- package/dist/components/widget/NumberInput/assets/arrow-down.svg.js +12 -0
- package/dist/components/widget/NumberInput/assets/arrow-down.svg.js.map +1 -0
- package/dist/components/widget/NumberInput/assets/arrow-up.svg.js +12 -0
- package/dist/components/widget/NumberInput/assets/arrow-up.svg.js.map +1 -0
- package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +8 -4
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/SwapRate/SwapRate.d.ts +2 -1
- package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
- package/dist/components/widget/SwapRate/SwapRate.js +29 -20
- package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +77 -86
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +28 -46
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/constants.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/constants.js +2 -1
- package/dist/components/widget/TradeOverview/TradeComplete/constants.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +105 -72
- 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 +46 -11
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +7 -2
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +19 -7
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +15 -0
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js +241 -0
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -0
- package/dist/components/widget/TradeOverview/steps.d.ts +37 -0
- package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/steps.js +10 -1
- package/dist/components/widget/TradeOverview/steps.js.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +2 -2
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/swapAmounts.d.ts +14 -0
- package/dist/components/widget/TradeOverview/utils/swapAmounts.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/utils/swapAmounts.js +43 -0
- package/dist/components/widget/TradeOverview/utils/swapAmounts.js.map +1 -0
- package/dist/components/widget/Twap/OrderDuration.d.ts +2 -0
- package/dist/components/widget/Twap/OrderDuration.d.ts.map +1 -0
- package/dist/components/widget/Twap/OrderDuration.js +75 -0
- package/dist/components/widget/Twap/OrderDuration.js.map +1 -0
- package/dist/components/widget/Twap/OrderSplit.d.ts +2 -0
- package/dist/components/widget/Twap/OrderSplit.d.ts.map +1 -0
- package/dist/components/widget/Twap/OrderSplit.js +57 -0
- package/dist/components/widget/Twap/OrderSplit.js.map +1 -0
- package/dist/components/widget/Twap/RateProtection.d.ts +2 -0
- package/dist/components/widget/Twap/RateProtection.d.ts.map +1 -0
- package/dist/components/widget/Twap/RateProtection.js +57 -0
- package/dist/components/widget/Twap/RateProtection.js.map +1 -0
- package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts +3 -0
- package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts.map +1 -0
- package/dist/components/widget/Twap/TwapDetailWithTooltip.js +33 -0
- package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -0
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/configurator/components/TradeModesSelector.d.ts.map +1 -1
- package/dist/core/TradeFlowScreenButton.d.ts +5 -0
- package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
- package/dist/core/TradeFlowScreenButton.js +58 -1
- package/dist/core/TradeFlowScreenButton.js.map +1 -1
- package/dist/core/TwapDetails.d.ts +2 -0
- package/dist/core/TwapDetails.d.ts.map +1 -0
- package/dist/core/TwapDetails.js +24 -0
- package/dist/core/TwapDetails.js.map +1 -0
- package/dist/core/across/isCrosschainPossible.d.ts.map +1 -1
- package/dist/core/across/isCrosschainPossible.js +1 -1
- package/dist/core/across/isCrosschainPossible.js.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts +1 -0
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js +71 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
- package/dist/core/constants.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +199 -3
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/state/common.d.ts +2 -0
- package/dist/core/inputs/state/common.d.ts.map +1 -1
- package/dist/core/inputs/state/common.js +40 -4
- package/dist/core/inputs/state/common.js.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js +2 -2
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/limit/state/utils.d.ts +1 -1
- package/dist/core/limit/useLimitRate.d.ts.map +1 -1
- package/dist/core/limit/useLimitRate.js +0 -2
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/state/chainToAtom.d.ts +2 -0
- package/dist/core/state/chainToAtom.d.ts.map +1 -1
- package/dist/core/state/chainToAtom.js +28 -7
- package/dist/core/state/chainToAtom.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/tradeModeAtom.d.ts +1 -1
- package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
- package/dist/core/state/tradeModeAtom.js.map +1 -1
- package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
- package/dist/core/state/widgetEventsAtom.js +55 -33
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/core/twap/state/constants.d.ts +15 -0
- package/dist/core/twap/state/constants.d.ts.map +1 -0
- package/dist/core/twap/state/constants.js +19 -0
- package/dist/core/twap/state/constants.js.map +1 -0
- package/dist/core/twap/state/currentTwapInputAtom.d.ts +4 -0
- package/dist/core/twap/state/currentTwapInputAtom.d.ts.map +1 -0
- package/dist/core/twap/state/currentTwapInputAtom.js +6 -0
- package/dist/core/twap/state/currentTwapInputAtom.js.map +1 -0
- package/dist/core/twap/state/isCrosschainAtom.d.ts +3 -0
- package/dist/core/twap/state/isCrosschainAtom.d.ts.map +1 -0
- package/dist/core/twap/state/isCrosschainAtom.js +16 -0
- package/dist/core/twap/state/isCrosschainAtom.js.map +1 -0
- package/dist/core/twap/state/selectedTokenActionsAtom.d.ts +13 -0
- package/dist/core/twap/state/selectedTokenActionsAtom.d.ts.map +1 -0
- package/dist/core/twap/state/selectedTokenActionsAtom.js +198 -0
- package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -0
- package/dist/core/twap/state/twapInputAmountAtom.d.ts +9 -0
- package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +1 -0
- package/dist/core/twap/state/twapInputAmountAtom.js +21 -0
- package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -0
- package/dist/core/twap/state/twapParamsAtom.d.ts +16 -0
- package/dist/core/twap/state/twapParamsAtom.d.ts.map +1 -0
- package/dist/core/twap/state/twapParamsAtom.js +22 -0
- package/dist/core/twap/state/twapParamsAtom.js.map +1 -0
- package/dist/core/twap/state/twapReceiverAddressAtom.d.ts +5 -0
- package/dist/core/twap/state/twapReceiverAddressAtom.d.ts.map +1 -0
- package/dist/core/twap/state/twapReceiverAddressAtom.js +10 -0
- package/dist/core/twap/state/twapReceiverAddressAtom.js.map +1 -0
- package/dist/core/twap/state/twapSideAtom.d.ts +4 -0
- package/dist/core/twap/state/twapSideAtom.d.ts.map +1 -0
- package/dist/core/twap/state/twapSideAtom.js +19 -0
- package/dist/core/twap/state/twapSideAtom.js.map +1 -0
- package/dist/core/twap/state/twapTokenAtoms.d.ts +10 -0
- package/dist/core/twap/state/twapTokenAtoms.d.ts.map +1 -0
- package/dist/core/twap/state/twapTokenAtoms.js +17 -0
- package/dist/core/twap/state/twapTokenAtoms.js.map +1 -0
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +12 -0
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -0
- package/dist/core/twap/twapDetails/minimumReceiveable.js +44 -0
- package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -0
- package/dist/core/twap/useTwapDetailsListProps.d.ts +3 -0
- package/dist/core/twap/useTwapDetailsListProps.d.ts.map +1 -0
- package/dist/core/twap/useTwapDetailsListProps.js +109 -0
- package/dist/core/twap/useTwapDetailsListProps.js.map +1 -0
- package/dist/core/twap/useTwapTokenFromInputProps.d.ts +9 -0
- package/dist/core/twap/useTwapTokenFromInputProps.d.ts.map +1 -0
- package/dist/core/twap/useTwapTokenFromInputProps.js +455 -0
- package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -0
- package/dist/core/twap/useTwapTokenSwitcherProps.d.ts +3 -0
- package/dist/core/twap/useTwapTokenSwitcherProps.d.ts.map +1 -0
- package/dist/core/twap/useTwapTokenSwitcherProps.js +38 -0
- package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -0
- package/dist/core/twap/useTwapTokenToInputProps.d.ts +9 -0
- package/dist/core/twap/useTwapTokenToInputProps.d.ts.map +1 -0
- package/dist/core/twap/useTwapTokenToInputProps.js +271 -0
- package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -0
- package/dist/events/effects/formInput.d.ts +3 -0
- package/dist/events/effects/formInput.d.ts.map +1 -1
- package/dist/events/effects/formInput.js +17 -1
- package/dist/events/effects/formInput.js.map +1 -1
- package/dist/events/getters/twap.d.ts +6 -0
- package/dist/events/getters/twap.d.ts.map +1 -0
- package/dist/events/getters/twap.js +65 -0
- package/dist/events/getters/twap.js.map +1 -0
- package/dist/events/getters/widgetState.d.ts.map +1 -1
- package/dist/events/getters/widgetState.js +3 -1
- package/dist/events/getters/widgetState.js.map +1 -1
- package/dist/events/hooks/useActivateEffects.d.ts.map +1 -1
- package/dist/events/hooks/useActivateEffects.js +2 -1
- package/dist/events/hooks/useActivateEffects.js.map +1 -1
- package/dist/events/types/common.d.ts +6 -0
- package/dist/events/types/common.d.ts.map +1 -1
- package/dist/events/types/formInput.d.ts +11 -2
- package/dist/events/types/formInput.d.ts.map +1 -1
- package/dist/events/types/index.d.ts +4 -1
- package/dist/events/types/index.d.ts.map +1 -1
- package/dist/events/types/limit.d.ts +2 -2
- package/dist/events/types/limit.d.ts.map +1 -1
- package/dist/events/types/swap.d.ts +3 -2
- package/dist/events/types/swap.d.ts.map +1 -1
- package/dist/events/types/twap.d.ts +26 -0
- package/dist/events/types/twap.d.ts.map +1 -0
- package/dist/hooks/batch/useSendBatchTx.d.ts +1 -1
- package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -1
- package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
- package/dist/hooks/permit/utils/deadlines.d.ts +2 -2
- package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -1
- package/dist/hooks/permit/utils/deadlines.js +4 -4
- package/dist/hooks/permit/utils/deadlines.js.map +1 -1
- package/dist/hooks/swap/prices/constants.d.ts +1 -0
- package/dist/hooks/swap/prices/constants.d.ts.map +1 -1
- package/dist/hooks/swap/prices/constants.js +2 -1
- package/dist/hooks/swap/prices/constants.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts +19 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js +86 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +37 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +164 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts +69 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js +278 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +15 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +89 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts +60 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js +325 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts +18 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +87 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts +10 -1
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +2 -5
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +2 -3
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +6 -6
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +3 -3
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +3 -15
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +4 -5
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +17 -6
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.js +34 -2
- package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts +11 -46
- 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/types.d.ts +6 -5
- package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +67 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +24 -6
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts +17 -10
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +32 -4
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +5 -6
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +7 -7
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +37 -35
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +14 -17
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/utils.d.ts +1 -0
- package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/utils.js +8 -1
- package/dist/hooks/swap/prices/delta/queries/utils.js.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +37 -35
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.js +3 -4
- package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +0 -2
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +16 -0
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -0
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js +73 -0
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -0
- package/dist/hooks/swap/prices/useTwapPrices.d.ts +28 -0
- package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -0
- package/dist/hooks/swap/prices/useTwapPrices.js +175 -0
- package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +48 -0
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +71 -0
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts +50 -0
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js +94 -0
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/types.d.ts +4 -2
- package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +1 -0
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +57 -55
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +6 -6
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +263 -152
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +7 -7
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +296 -181
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +2 -1
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +85 -83
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/utils.js +1 -1
- package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +8 -9
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +4 -3
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +5 -6
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +5 -9
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +88 -0
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js +591 -0
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -0
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts +25 -0
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js +237 -0
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -0
- package/dist/hooks/useSDK.d.ts +4 -4
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js +4 -4
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/hooks/useSlippage.d.ts.map +1 -1
- package/dist/hooks/useSlippage.js +2 -1
- package/dist/hooks/useSlippage.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/constants/delta.d.ts.map +1 -1
- package/dist/lib/constants/delta.js +1 -1
- package/dist/lib/constants/delta.js.map +1 -1
- package/dist/lib/constants/time.d.ts +1 -0
- package/dist/lib/constants/time.d.ts.map +1 -1
- package/dist/lib/constants/time.js +2 -1
- package/dist/lib/constants/time.js.map +1 -1
- package/dist/lib/queryClient.js +2 -2
- package/dist/lib/queryClient.js.map +1 -1
- package/dist/lib/tradeMode.d.ts +1 -1
- package/dist/lib/tradeMode.d.ts.map +1 -1
- package/dist/lib/tradeMode.js +1 -1
- package/dist/lib/tradeMode.js.map +1 -1
- package/dist/lib/utils/index.d.ts +8 -0
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +18 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/time.d.ts +2 -0
- package/dist/lib/utils/time.d.ts.map +1 -1
- package/dist/lib/utils/time.js +7 -1
- package/dist/lib/utils/time.js.map +1 -1
- package/dist/lib/utils/toasts.d.ts +4 -4
- 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 +17 -0
- package/dist/lib/utils/twap.d.ts.map +1 -0
- package/dist/lib/utils/twap.js +34 -0
- package/dist/lib/utils/twap.js.map +1 -0
- package/dist/lib/web3/privy/config.js +1 -1
- package/dist/lib/web3/privy/config.js.map +1 -1
- package/dist/lib/web3/wagmi/config.js +1 -1
- package/dist/lib/web3/wagmi/config.js.map +1 -1
- package/dist/styles.css +63 -2
- 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.d.ts.map +1 -1
- package/dist/tokens/defaultTokens.js +21 -18
- 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/types.d.ts +3 -3
- package/dist/transactions/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { InputOverridesFromPrice } from './useTokenInputsFromPrice';
|
|
2
|
+
import { BridgePrice, DeltaPrice, SwapSideUnion } from '@velora-dex/sdk';
|
|
3
|
+
import { DeltaPriceQueryKey } from './delta/queries/useDeltaPriceQuery';
|
|
4
|
+
type UseTokenInputsFromTwapPriceReturn = InputOverridesFromPrice & {
|
|
5
|
+
price?: DeltaPrice | BridgePrice;
|
|
6
|
+
side: SwapSideUnion;
|
|
7
|
+
isLoading: boolean;
|
|
8
|
+
isError: boolean;
|
|
9
|
+
error: Error | null;
|
|
10
|
+
cachedError: Error | null;
|
|
11
|
+
queryKey: DeltaPriceQueryKey;
|
|
12
|
+
numSlices: number;
|
|
13
|
+
};
|
|
14
|
+
export declare function useTokenInputsFromTwapPrice(): UseTokenInputsFromTwapPriceReturn;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=useTokenInputsFromTwapPrice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTokenInputsFromTwapPrice.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useTokenInputsFromTwapPrice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,KAAK,iCAAiC,GAAG,uBAAuB,GAAG;IACjE,KAAK,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACjC,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAwBF,wBAAgB,2BAA2B,IAAI,iCAAiC,CAsB/E"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { d as distExports } from '../../../_virtual/index.js';
|
|
2
|
+
import { useTwapPrices } from './useTwapPrices.js';
|
|
3
|
+
import { useTwapSide } from '../../../core/twap/state/twapSideAtom.js';
|
|
4
|
+
|
|
5
|
+
function getTwapOverridesFromPrice({
|
|
6
|
+
totalSrcAmount,
|
|
7
|
+
totalDestAmount,
|
|
8
|
+
side
|
|
9
|
+
}) {
|
|
10
|
+
if (side === "BUY") {
|
|
11
|
+
return {
|
|
12
|
+
tokenFromAmount: {
|
|
13
|
+
amountWei: totalSrcAmount || "0"
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
tokenToAmount: {
|
|
19
|
+
amountWei: totalDestAmount || "0"
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
function useTokenInputsFromTwapPrice() {
|
|
24
|
+
const $ = distExports.c(14);
|
|
25
|
+
const twapPrices = useTwapPrices();
|
|
26
|
+
const swapSideFromInput = useTwapSide();
|
|
27
|
+
const side = twapPrices.side || swapSideFromInput;
|
|
28
|
+
let t0;
|
|
29
|
+
if ($[0] !== side || $[1] !== twapPrices.totalDestAmount || $[2] !== twapPrices.totalSrcAmount) {
|
|
30
|
+
t0 = getTwapOverridesFromPrice({
|
|
31
|
+
totalSrcAmount: twapPrices.totalSrcAmount,
|
|
32
|
+
totalDestAmount: twapPrices.totalDestAmount,
|
|
33
|
+
side
|
|
34
|
+
});
|
|
35
|
+
$[0] = side;
|
|
36
|
+
$[1] = twapPrices.totalDestAmount;
|
|
37
|
+
$[2] = twapPrices.totalSrcAmount;
|
|
38
|
+
$[3] = t0;
|
|
39
|
+
} else {
|
|
40
|
+
t0 = $[3];
|
|
41
|
+
}
|
|
42
|
+
const overrides = t0;
|
|
43
|
+
let t1;
|
|
44
|
+
if ($[4] !== overrides || $[5] !== side || $[6] !== twapPrices.cachedError || $[7] !== twapPrices.error || $[8] !== twapPrices.isError || $[9] !== twapPrices.isLoading || $[10] !== twapPrices.numSlices || $[11] !== twapPrices.price || $[12] !== twapPrices.queryKey) {
|
|
45
|
+
t1 = {
|
|
46
|
+
...overrides,
|
|
47
|
+
price: twapPrices.price,
|
|
48
|
+
side,
|
|
49
|
+
isLoading: twapPrices.isLoading,
|
|
50
|
+
isError: twapPrices.isError,
|
|
51
|
+
error: twapPrices.error,
|
|
52
|
+
cachedError: twapPrices.cachedError,
|
|
53
|
+
queryKey: twapPrices.queryKey,
|
|
54
|
+
numSlices: twapPrices.numSlices
|
|
55
|
+
};
|
|
56
|
+
$[4] = overrides;
|
|
57
|
+
$[5] = side;
|
|
58
|
+
$[6] = twapPrices.cachedError;
|
|
59
|
+
$[7] = twapPrices.error;
|
|
60
|
+
$[8] = twapPrices.isError;
|
|
61
|
+
$[9] = twapPrices.isLoading;
|
|
62
|
+
$[10] = twapPrices.numSlices;
|
|
63
|
+
$[11] = twapPrices.price;
|
|
64
|
+
$[12] = twapPrices.queryKey;
|
|
65
|
+
$[13] = t1;
|
|
66
|
+
} else {
|
|
67
|
+
t1 = $[13];
|
|
68
|
+
}
|
|
69
|
+
return t1;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export { useTokenInputsFromTwapPrice };
|
|
73
|
+
//# sourceMappingURL=useTokenInputsFromTwapPrice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTokenInputsFromTwapPrice.js","sources":["../../../../src/hooks/swap/prices/useTokenInputsFromTwapPrice.ts"],"sourcesContent":["import type { InputOverridesFromPrice } from \"./useTokenInputsFromPrice\";\nimport { useTwapPrices, type UseTwapPricesReturn } from \"./useTwapPrices\";\nimport { useTwapSide } from \"@/core/twap/state/twapSideAtom\";\nimport type { BridgePrice, DeltaPrice, SwapSideUnion } from \"@velora-dex/sdk\";\nimport type { DeltaPriceQueryKey } from \"./delta/queries/useDeltaPriceQuery\";\n\ntype UseTokenInputsFromTwapPriceReturn = InputOverridesFromPrice & {\n price?: DeltaPrice | BridgePrice;\n side: SwapSideUnion;\n isLoading: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n queryKey: DeltaPriceQueryKey;\n numSlices: number;\n};\n\nfunction getTwapOverridesFromPrice({\n totalSrcAmount,\n totalDestAmount,\n side,\n}: Pick<UseTwapPricesReturn, \"totalSrcAmount\" | \"totalDestAmount\"> & {\n side: SwapSideUnion;\n}): InputOverridesFromPrice | undefined {\n if (side === \"BUY\") {\n return {\n tokenFromAmount: {\n amountWei: totalSrcAmount || \"0\",\n },\n };\n }\n\n return {\n tokenToAmount: {\n amountWei: totalDestAmount || \"0\",\n },\n };\n}\n\nexport function useTokenInputsFromTwapPrice(): UseTokenInputsFromTwapPriceReturn {\n const twapPrices = useTwapPrices();\n const swapSideFromInput = useTwapSide();\n const side = twapPrices.side || swapSideFromInput;\n\n const overrides = getTwapOverridesFromPrice({\n totalSrcAmount: twapPrices.totalSrcAmount,\n totalDestAmount: twapPrices.totalDestAmount,\n side,\n });\n\n return {\n ...overrides,\n price: twapPrices.price,\n side,\n isLoading: twapPrices.isLoading,\n isError: twapPrices.isError,\n error: twapPrices.error,\n cachedError: twapPrices.cachedError,\n queryKey: twapPrices.queryKey,\n numSlices: twapPrices.numSlices,\n };\n}\n"],"names":["getTwapOverridesFromPrice","totalSrcAmount","totalDestAmount","side","tokenFromAmount","amountWei","tokenToAmount","useTokenInputsFromTwapPrice","$","_c","twapPrices","useTwapPrices","swapSideFromInput","useTwapSide","t0","overrides","t1","cachedError","error","isError","isLoading","numSlices","price","queryKey"],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { SwapSideUnion } from '@velora-dex/sdk';
|
|
2
|
+
import { DeltaPriceQueryKey } from './delta/queries/useDeltaPriceQuery';
|
|
3
|
+
import { SupportedChainId } from '../../../lib/web3/wagmi/types';
|
|
4
|
+
import { QueryObserverResult, RefetchOptions } from '@tanstack/react-query';
|
|
5
|
+
import { DeltaOrBridgePrice } from './types';
|
|
6
|
+
export type UseTwapPricesReturn = {
|
|
7
|
+
/** @description price.srcAmount multiplied by numSlices */
|
|
8
|
+
totalSrcAmount?: string;
|
|
9
|
+
/** @description price.receivedDestAmount multiplied by numSlices */
|
|
10
|
+
totalDestAmount?: string;
|
|
11
|
+
price?: DeltaOrBridgePrice;
|
|
12
|
+
side?: SwapSideUnion;
|
|
13
|
+
isLoading: boolean;
|
|
14
|
+
isFetching: boolean;
|
|
15
|
+
isError: boolean;
|
|
16
|
+
error: Error | null;
|
|
17
|
+
cachedError: Error | null;
|
|
18
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<DeltaOrBridgePrice, Error>>;
|
|
19
|
+
queryKey: DeltaPriceQueryKey;
|
|
20
|
+
numSlices: number;
|
|
21
|
+
chainId: SupportedChainId;
|
|
22
|
+
destChainId?: SupportedChainId;
|
|
23
|
+
isCrossChain: boolean;
|
|
24
|
+
};
|
|
25
|
+
export declare function useTwapPrices({ enabled }?: {
|
|
26
|
+
enabled: boolean;
|
|
27
|
+
}): UseTwapPricesReturn;
|
|
28
|
+
//# sourceMappingURL=useTwapPrices.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useTwapPrices.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,oCAAoC,CAAC;AAa5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,MAAM,mBAAmB,GAAG;IAChC,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,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,OAAO,EAAE,CACP,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7D,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,aAAa,CAC3B,EAAE,OAAO,EAAE;;CAAoB,GAC9B,mBAAmB,CA+DrB"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { d as distExports } from '../../../_virtual/index.js';
|
|
2
|
+
import { useAtomValue } from '../../../core/store.js';
|
|
3
|
+
import { useDeltaPriceQuery } from './delta/queries/useDeltaPriceQuery.js';
|
|
4
|
+
import { useGlobalDeltaEnabled } from '../../useGlobalDeltaEnabled.js';
|
|
5
|
+
import { useCachedQueryError } from '../../useCachedQueryError.js';
|
|
6
|
+
import { getSwapSideFromDeltaPrice } from './delta/queries/utils.js';
|
|
7
|
+
import { PRICE_REFETCH_INTERVAL_MS } from './constants.js';
|
|
8
|
+
import { usePricesParams, useExtraDeltaPriceParams } from './usePricesParams.js';
|
|
9
|
+
import { twapPayInputAmountWeiAtom, twapReceiveInputAmountWeiAtom } from '../../../core/twap/state/twapInputAmountAtom.js';
|
|
10
|
+
import { useTwapSplit } from '../../../core/twap/state/twapParamsAtom.js';
|
|
11
|
+
import { useTwapSide } from '../../../core/twap/state/twapSideAtom.js';
|
|
12
|
+
import { getTwapChunkAmount, getTwapAmountsFromPrice } from '../../../lib/utils/twap.js';
|
|
13
|
+
|
|
14
|
+
function useTwapPrices(t0) {
|
|
15
|
+
const $ = distExports.c(37);
|
|
16
|
+
let t1;
|
|
17
|
+
if ($[0] !== t0) {
|
|
18
|
+
t1 = t0 === void 0 ? {
|
|
19
|
+
enabled: true
|
|
20
|
+
} : t0;
|
|
21
|
+
$[0] = t0;
|
|
22
|
+
$[1] = t1;
|
|
23
|
+
} else {
|
|
24
|
+
t1 = $[1];
|
|
25
|
+
}
|
|
26
|
+
const {
|
|
27
|
+
enabled
|
|
28
|
+
} = t1;
|
|
29
|
+
const {
|
|
30
|
+
priceParams,
|
|
31
|
+
isCrossChain,
|
|
32
|
+
chainId,
|
|
33
|
+
destChainId
|
|
34
|
+
} = usePricesParams("twap");
|
|
35
|
+
const payAmountWei = useAtomValue(twapPayInputAmountWeiAtom);
|
|
36
|
+
const receiveAmountWei = useAtomValue(twapReceiveInputAmountWeiAtom) ?? "0";
|
|
37
|
+
const numSlices = useTwapSplit();
|
|
38
|
+
const side = useTwapSide();
|
|
39
|
+
const isSell = side === "SELL";
|
|
40
|
+
const totalAmount = isSell ? payAmountWei : receiveAmountWei;
|
|
41
|
+
let t2;
|
|
42
|
+
if ($[2] !== numSlices || $[3] !== totalAmount) {
|
|
43
|
+
t2 = getTwapChunkAmount({
|
|
44
|
+
totalWei: totalAmount,
|
|
45
|
+
numSlices
|
|
46
|
+
});
|
|
47
|
+
$[2] = numSlices;
|
|
48
|
+
$[3] = totalAmount;
|
|
49
|
+
$[4] = t2;
|
|
50
|
+
} else {
|
|
51
|
+
t2 = $[4];
|
|
52
|
+
}
|
|
53
|
+
const chunkAmount = t2;
|
|
54
|
+
const extraDeltaPriceParams = useExtraDeltaPriceParams();
|
|
55
|
+
let t3;
|
|
56
|
+
if ($[5] !== chunkAmount || $[6] !== extraDeltaPriceParams || $[7] !== priceParams) {
|
|
57
|
+
t3 = {
|
|
58
|
+
...priceParams,
|
|
59
|
+
...extraDeltaPriceParams,
|
|
60
|
+
allowBridgeAndSwap: false,
|
|
61
|
+
amount: chunkAmount
|
|
62
|
+
};
|
|
63
|
+
$[5] = chunkAmount;
|
|
64
|
+
$[6] = extraDeltaPriceParams;
|
|
65
|
+
$[7] = priceParams;
|
|
66
|
+
$[8] = t3;
|
|
67
|
+
} else {
|
|
68
|
+
t3 = $[8];
|
|
69
|
+
}
|
|
70
|
+
const twapPriceParams = t3;
|
|
71
|
+
const {
|
|
72
|
+
enabledGlobally
|
|
73
|
+
} = useGlobalDeltaEnabled();
|
|
74
|
+
const t4 = enabled && enabledGlobally;
|
|
75
|
+
let t5;
|
|
76
|
+
if ($[9] !== t4) {
|
|
77
|
+
t5 = {
|
|
78
|
+
enabled: t4,
|
|
79
|
+
refetchInterval: PRICE_REFETCH_INTERVAL_MS,
|
|
80
|
+
staleTime: PRICE_REFETCH_INTERVAL_MS,
|
|
81
|
+
retry: false
|
|
82
|
+
};
|
|
83
|
+
$[9] = t4;
|
|
84
|
+
$[10] = t5;
|
|
85
|
+
} else {
|
|
86
|
+
t5 = $[10];
|
|
87
|
+
}
|
|
88
|
+
let t6;
|
|
89
|
+
if ($[11] !== chainId || $[12] !== destChainId || $[13] !== t5 || $[14] !== twapPriceParams) {
|
|
90
|
+
t6 = {
|
|
91
|
+
priceParams: twapPriceParams,
|
|
92
|
+
chainId,
|
|
93
|
+
destChainId,
|
|
94
|
+
query: t5
|
|
95
|
+
};
|
|
96
|
+
$[11] = chainId;
|
|
97
|
+
$[12] = destChainId;
|
|
98
|
+
$[13] = t5;
|
|
99
|
+
$[14] = twapPriceParams;
|
|
100
|
+
$[15] = t6;
|
|
101
|
+
} else {
|
|
102
|
+
t6 = $[15];
|
|
103
|
+
}
|
|
104
|
+
const {
|
|
105
|
+
result: deltaPriceQuery,
|
|
106
|
+
queryKey
|
|
107
|
+
} = useDeltaPriceQuery(t6);
|
|
108
|
+
const cachedError = useCachedQueryError(deltaPriceQuery);
|
|
109
|
+
const price = deltaPriceQuery.data;
|
|
110
|
+
let t7;
|
|
111
|
+
if ($[16] !== numSlices || $[17] !== price) {
|
|
112
|
+
t7 = price ? getTwapAmountsFromPrice({
|
|
113
|
+
price,
|
|
114
|
+
numSlices
|
|
115
|
+
}) : void 0;
|
|
116
|
+
$[16] = numSlices;
|
|
117
|
+
$[17] = price;
|
|
118
|
+
$[18] = t7;
|
|
119
|
+
} else {
|
|
120
|
+
t7 = $[18];
|
|
121
|
+
}
|
|
122
|
+
const total = t7;
|
|
123
|
+
let t8;
|
|
124
|
+
if ($[19] !== price) {
|
|
125
|
+
t8 = price ? getSwapSideFromDeltaPrice(price) : void 0;
|
|
126
|
+
$[19] = price;
|
|
127
|
+
$[20] = t8;
|
|
128
|
+
} else {
|
|
129
|
+
t8 = $[20];
|
|
130
|
+
}
|
|
131
|
+
const t9 = total?.srcAmount;
|
|
132
|
+
const t10 = total?.destAmount;
|
|
133
|
+
let t11;
|
|
134
|
+
if ($[21] !== cachedError || $[22] !== chainId || $[23] !== deltaPriceQuery.error || $[24] !== deltaPriceQuery.isError || $[25] !== deltaPriceQuery.isFetching || $[26] !== deltaPriceQuery.isLoading || $[27] !== deltaPriceQuery.refetch || $[28] !== destChainId || $[29] !== isCrossChain || $[30] !== numSlices || $[31] !== price || $[32] !== queryKey || $[33] !== t10 || $[34] !== t8 || $[35] !== t9) {
|
|
135
|
+
t11 = {
|
|
136
|
+
price,
|
|
137
|
+
side: t8,
|
|
138
|
+
isLoading: deltaPriceQuery.isLoading,
|
|
139
|
+
isFetching: deltaPriceQuery.isFetching,
|
|
140
|
+
isError: deltaPriceQuery.isError,
|
|
141
|
+
error: deltaPriceQuery.error,
|
|
142
|
+
refetch: deltaPriceQuery.refetch,
|
|
143
|
+
cachedError,
|
|
144
|
+
queryKey,
|
|
145
|
+
numSlices,
|
|
146
|
+
chainId,
|
|
147
|
+
destChainId,
|
|
148
|
+
isCrossChain,
|
|
149
|
+
totalSrcAmount: t9,
|
|
150
|
+
totalDestAmount: t10
|
|
151
|
+
};
|
|
152
|
+
$[21] = cachedError;
|
|
153
|
+
$[22] = chainId;
|
|
154
|
+
$[23] = deltaPriceQuery.error;
|
|
155
|
+
$[24] = deltaPriceQuery.isError;
|
|
156
|
+
$[25] = deltaPriceQuery.isFetching;
|
|
157
|
+
$[26] = deltaPriceQuery.isLoading;
|
|
158
|
+
$[27] = deltaPriceQuery.refetch;
|
|
159
|
+
$[28] = destChainId;
|
|
160
|
+
$[29] = isCrossChain;
|
|
161
|
+
$[30] = numSlices;
|
|
162
|
+
$[31] = price;
|
|
163
|
+
$[32] = queryKey;
|
|
164
|
+
$[33] = t10;
|
|
165
|
+
$[34] = t8;
|
|
166
|
+
$[35] = t9;
|
|
167
|
+
$[36] = t11;
|
|
168
|
+
} else {
|
|
169
|
+
t11 = $[36];
|
|
170
|
+
}
|
|
171
|
+
return t11;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
export { useTwapPrices };
|
|
175
|
+
//# sourceMappingURL=useTwapPrices.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTwapPrices.js","sources":["../../../../src/hooks/swap/prices/useTwapPrices.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport {\n useDeltaPriceQuery,\n type DeltaPriceQueryKey,\n type DeltaPriceQueryParams,\n} from \"./delta/queries/useDeltaPriceQuery\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { useCachedQueryError } from \"@/hooks/useCachedQueryError\";\nimport { getSwapSideFromDeltaPrice } from \"./delta/queries/utils\";\nimport { PRICE_REFETCH_INTERVAL_MS } from \"./constants\";\nimport { useExtraDeltaPriceParams, usePricesParams } from \"./usePricesParams\";\n\nimport {\n twapPayInputAmountWeiAtom,\n twapReceiveInputAmountWeiAtom,\n} from \"@/core/twap/state/twapInputAmountAtom\";\nimport { useTwapSplit } from \"@/core/twap/state/twapParamsAtom\";\nimport { useTwapSide } from \"@/core/twap/state/twapSideAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getTwapChunkAmount, getTwapAmountsFromPrice } from \"@/lib/utils/twap\";\nimport type {\n QueryObserverResult,\n RefetchOptions,\n} from \"@tanstack/react-query\";\nimport type { DeltaOrBridgePrice } from \"./types\";\n\nexport type UseTwapPricesReturn = {\n /** @description price.srcAmount multiplied by numSlices */\n totalSrcAmount?: string;\n /** @description price.receivedDestAmount multiplied by numSlices */\n totalDestAmount?: string;\n price?: DeltaOrBridgePrice;\n side?: SwapSideUnion;\n isLoading: boolean;\n isFetching: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n refetch: (\n options?: RefetchOptions\n ) => Promise<QueryObserverResult<DeltaOrBridgePrice, Error>>;\n queryKey: DeltaPriceQueryKey;\n numSlices: number;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n isCrossChain: boolean;\n};\n\nexport function useTwapPrices(\n { enabled } = { enabled: true }\n): UseTwapPricesReturn {\n const { priceParams, isCrossChain, chainId, destChainId } =\n usePricesParams(\"twap\");\n\n const payAmountWei = useAtomValue(twapPayInputAmountWeiAtom);\n const receiveAmountWei = useAtomValue(twapReceiveInputAmountWeiAtom) ?? \"0\";\n\n const numSlices = useTwapSplit();\n\n const side = useTwapSide();\n const isSell = side === \"SELL\";\n\n const totalAmount = isSell ? payAmountWei : receiveAmountWei;\n // Request a quote for a single slice amount\n const chunkAmount = getTwapChunkAmount({ totalWei: totalAmount, numSlices });\n\n const extraDeltaPriceParams = useExtraDeltaPriceParams();\n\n const twapPriceParams: DeltaPriceQueryParams = {\n ...priceParams,\n ...extraDeltaPriceParams,\n allowBridgeAndSwap: false,\n amount: chunkAmount,\n };\n\n const { enabledGlobally } = useGlobalDeltaEnabled();\n\n const { result: deltaPriceQuery, queryKey } = useDeltaPriceQuery({\n priceParams: twapPriceParams,\n chainId,\n destChainId,\n query: {\n enabled: enabled && enabledGlobally,\n refetchInterval: PRICE_REFETCH_INTERVAL_MS,\n staleTime: PRICE_REFETCH_INTERVAL_MS,\n retry: false,\n },\n });\n\n const cachedError = useCachedQueryError(deltaPriceQuery);\n const price = deltaPriceQuery.data;\n\n const total = price\n ? getTwapAmountsFromPrice({ price, numSlices })\n : undefined;\n\n return {\n price,\n side: price ? getSwapSideFromDeltaPrice(price) : undefined,\n isLoading: deltaPriceQuery.isLoading,\n isFetching: deltaPriceQuery.isFetching,\n isError: deltaPriceQuery.isError,\n error: deltaPriceQuery.error,\n refetch: deltaPriceQuery.refetch,\n cachedError,\n queryKey,\n numSlices: numSlices,\n chainId,\n destChainId,\n isCrossChain,\n totalSrcAmount: total?.srcAmount,\n totalDestAmount: total?.destAmount,\n };\n}\n"],"names":["useTwapPrices","t0","$","_c","t1","undefined","enabled","priceParams","isCrossChain","chainId","destChainId","usePricesParams","payAmountWei","useAtomValue","twapPayInputAmountWeiAtom","receiveAmountWei","twapReceiveInputAmountWeiAtom","numSlices","useTwapSplit","side","useTwapSide","isSell","totalAmount","t2","getTwapChunkAmount","totalWei","chunkAmount","extraDeltaPriceParams","useExtraDeltaPriceParams","t3","allowBridgeAndSwap","amount","twapPriceParams","enabledGlobally","useGlobalDeltaEnabled","t4","t5","refetchInterval","PRICE_REFETCH_INTERVAL_MS","staleTime","retry","t6","query","result","deltaPriceQuery","queryKey","useDeltaPriceQuery","cachedError","useCachedQueryError","price","data","t7","getTwapAmountsFromPrice","total","t8","getSwapSideFromDeltaPrice","t9","srcAmount","t10","destAmount","t11","error","isError","isFetching","isLoading","refetch","totalSrcAmount","totalDestAmount"],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { DeltaAuction } from '@velora-dex/sdk';
|
|
2
|
+
import { PreSignOrderToPost } from '../../../prices/delta/mutations/types';
|
|
3
|
+
import { EnsureTxReceiptFn } from '../../../../../transactions/queries/ensureTxReceipt';
|
|
4
|
+
import { Hash } from 'viem';
|
|
5
|
+
import { SupportedChainId } from '../../../../../lib/web3/wagmi/types';
|
|
6
|
+
import { LoggerInstance } from '../../../../../lib/utils/logger';
|
|
7
|
+
import { TxSentObject } from '../../../../../lib/utils/transactionHandlers';
|
|
8
|
+
export type DepositAndSubmitOrderInput<TCreateInput extends {
|
|
9
|
+
signal?: AbortSignal;
|
|
10
|
+
orderInput: {
|
|
11
|
+
srcToken: string;
|
|
12
|
+
};
|
|
13
|
+
}> = {
|
|
14
|
+
createOrderInput: TCreateInput;
|
|
15
|
+
depositAmount: string;
|
|
16
|
+
onTxSent?: (txSent: TxSentObject) => void;
|
|
17
|
+
};
|
|
18
|
+
export type DepositAndSubmitOrderFunc<TCreateInput extends {
|
|
19
|
+
signal?: AbortSignal;
|
|
20
|
+
orderInput: {
|
|
21
|
+
srcToken: string;
|
|
22
|
+
};
|
|
23
|
+
}, TAuction extends DeltaAuction> = (input: DepositAndSubmitOrderInput<TCreateInput>) => Promise<TAuction>;
|
|
24
|
+
type DepositAndSubmitOrderFactoryDeps<TOrderToPost extends PreSignOrderToPost, TAuction extends DeltaAuction, TCreateInput extends {
|
|
25
|
+
signal?: AbortSignal;
|
|
26
|
+
orderInput: {
|
|
27
|
+
srcToken: string;
|
|
28
|
+
};
|
|
29
|
+
}> = {
|
|
30
|
+
createOrderToPost: (input: TCreateInput) => Promise<TOrderToPost>;
|
|
31
|
+
sendDepositPreSignTx: (params: {
|
|
32
|
+
orderHash: string;
|
|
33
|
+
depositAmount: string;
|
|
34
|
+
signal?: AbortSignal;
|
|
35
|
+
}) => Promise<Hash>;
|
|
36
|
+
postOrder: (order: TOrderToPost) => Promise<TAuction>;
|
|
37
|
+
ensureTxReceipt: EnsureTxReceiptFn;
|
|
38
|
+
logger: LoggerInstance;
|
|
39
|
+
chainId: SupportedChainId;
|
|
40
|
+
};
|
|
41
|
+
export declare function depositAndSubmitOrderFactory<TOrderToPost extends PreSignOrderToPost, TAuction extends DeltaAuction, TCreateInput extends {
|
|
42
|
+
signal?: AbortSignal;
|
|
43
|
+
orderInput: {
|
|
44
|
+
srcToken: string;
|
|
45
|
+
};
|
|
46
|
+
}>({ createOrderToPost, sendDepositPreSignTx, postOrder, ensureTxReceipt, logger, chainId, }: DepositAndSubmitOrderFactoryDeps<TOrderToPost, TAuction, TCreateInput>): DepositAndSubmitOrderFunc<TCreateInput, TAuction>;
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=depositAndSubmitOrderFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"depositAndSubmitOrderFactory.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAKpE,MAAM,MAAM,0BAA0B,CACpC,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,IACC;IACF,gBAAgB,EAAE,YAAY,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,yBAAyB,CACnC,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,EACD,QAAQ,SAAS,YAAY,IAC3B,CAAC,KAAK,EAAE,0BAA0B,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE3E,KAAK,gCAAgC,CACnC,YAAY,SAAS,kBAAkB,EACvC,QAAQ,SAAS,YAAY,EAC7B,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,IACC;IACF,iBAAiB,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAClE,oBAAoB,EAAE,CAAC,MAAM,EAAE;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtD,eAAe,EAAE,iBAAiB,CAAC;IACnC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,YAAY,SAAS,kBAAkB,EACvC,QAAQ,SAAS,YAAY,EAC7B,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,EACD,EACA,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,EACT,eAAe,EACf,MAAM,EACN,OAAO,GACR,EAAE,gCAAgC,CACjC,YAAY,EACZ,QAAQ,EACR,YAAY,CACb,GAAG,yBAAyB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAgFpD"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { assert } from 'ts-essentials';
|
|
2
|
+
import { isETHaddress } from '../../../../../tokens/utils/eth.js';
|
|
3
|
+
import { guardUnpostedDeltaOrder } from '../../../prices/delta/orders/unposted/index.js';
|
|
4
|
+
|
|
5
|
+
function depositAndSubmitOrderFactory({
|
|
6
|
+
createOrderToPost,
|
|
7
|
+
sendDepositPreSignTx,
|
|
8
|
+
postOrder,
|
|
9
|
+
ensureTxReceipt,
|
|
10
|
+
logger,
|
|
11
|
+
chainId
|
|
12
|
+
}) {
|
|
13
|
+
return async ({
|
|
14
|
+
depositAmount: _depositAmount,
|
|
15
|
+
createOrderInput,
|
|
16
|
+
onTxSent
|
|
17
|
+
}) => {
|
|
18
|
+
const depositAmount = BigInt(_depositAmount);
|
|
19
|
+
assert(isETHaddress(createOrderInput.orderInput.srcToken), "srcToken must be ETH");
|
|
20
|
+
assert(depositAmount > 0n, "depositAmount must be greater than 0");
|
|
21
|
+
const {
|
|
22
|
+
signal
|
|
23
|
+
} = createOrderInput;
|
|
24
|
+
signal?.throwIfAborted();
|
|
25
|
+
try {
|
|
26
|
+
const orderToPost = await createOrderToPost(createOrderInput);
|
|
27
|
+
signal?.throwIfAborted();
|
|
28
|
+
const depositTxHash = await sendDepositPreSignTx({
|
|
29
|
+
orderHash: orderToPost.orderHash,
|
|
30
|
+
depositAmount: depositAmount.toString(),
|
|
31
|
+
signal
|
|
32
|
+
});
|
|
33
|
+
if (onTxSent) {
|
|
34
|
+
const depositTxReceiptPromise = ensureTxReceipt({
|
|
35
|
+
hash: depositTxHash,
|
|
36
|
+
chainId,
|
|
37
|
+
onReplaced: (data) => {
|
|
38
|
+
logger.log("[DepositAndSubmit] onReplaced:txHash", depositTxHash, data);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
logger.log("[DepositAndSubmit] awaiting depositNativeAndPreSign txHash:", depositTxHash);
|
|
42
|
+
onTxSent({
|
|
43
|
+
chainId,
|
|
44
|
+
action: "depositNativeAndPreSign",
|
|
45
|
+
receiptPromise: depositTxReceiptPromise,
|
|
46
|
+
transactionHash: depositTxHash,
|
|
47
|
+
transactionSpecificData: {
|
|
48
|
+
action: "depositNativeAndPreSign",
|
|
49
|
+
order: orderToPost,
|
|
50
|
+
depositAmount
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
const orderFromAPI = await guardUnpostedDeltaOrder({
|
|
55
|
+
order: {
|
|
56
|
+
...orderToPost,
|
|
57
|
+
timestamp: Date.now(),
|
|
58
|
+
transactionHash: depositTxHash
|
|
59
|
+
},
|
|
60
|
+
cb: () => postOrder(orderToPost)
|
|
61
|
+
});
|
|
62
|
+
return orderFromAPI;
|
|
63
|
+
} catch (error) {
|
|
64
|
+
logger.error("[DepositAndSubmit] error", error);
|
|
65
|
+
throw error;
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export { depositAndSubmitOrderFactory };
|
|
71
|
+
//# sourceMappingURL=depositAndSubmitOrderFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"depositAndSubmitOrderFactory.js","sources":["../../../../../../src/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.ts"],"sourcesContent":["import type { DeltaAuction } from \"@velora-dex/sdk\";\nimport type { PreSignOrderToPost } from \"../../../prices/delta/mutations/types\";\nimport type { EnsureTxReceiptFn } from \"@/transactions/queries/ensureTxReceipt\";\nimport type { Hash } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport type { TxSentObject } from \"@/lib/utils/transactionHandlers\";\nimport { assert } from \"ts-essentials\";\nimport { isETHaddress } from \"@/tokens/utils/eth\";\nimport { guardUnpostedDeltaOrder } from \"../../../prices/delta/orders/unposted\";\n\nexport type DepositAndSubmitOrderInput<\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n> = {\n createOrderInput: TCreateInput;\n depositAmount: string;\n onTxSent?: (txSent: TxSentObject) => void;\n};\n\nexport type DepositAndSubmitOrderFunc<\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n TAuction extends DeltaAuction,\n> = (input: DepositAndSubmitOrderInput<TCreateInput>) => Promise<TAuction>;\n\ntype DepositAndSubmitOrderFactoryDeps<\n TOrderToPost extends PreSignOrderToPost,\n TAuction extends DeltaAuction,\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n> = {\n createOrderToPost: (input: TCreateInput) => Promise<TOrderToPost>;\n sendDepositPreSignTx: (params: {\n orderHash: string;\n depositAmount: string;\n signal?: AbortSignal;\n }) => Promise<Hash>;\n postOrder: (order: TOrderToPost) => Promise<TAuction>;\n ensureTxReceipt: EnsureTxReceiptFn;\n logger: LoggerInstance;\n chainId: SupportedChainId;\n};\n\nexport function depositAndSubmitOrderFactory<\n TOrderToPost extends PreSignOrderToPost,\n TAuction extends DeltaAuction,\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n>({\n createOrderToPost,\n sendDepositPreSignTx,\n postOrder,\n ensureTxReceipt,\n logger,\n chainId,\n}: DepositAndSubmitOrderFactoryDeps<\n TOrderToPost,\n TAuction,\n TCreateInput\n>): DepositAndSubmitOrderFunc<TCreateInput, TAuction> {\n return async ({\n depositAmount: _depositAmount,\n createOrderInput,\n onTxSent,\n }) => {\n const depositAmount = BigInt(_depositAmount);\n\n assert(\n isETHaddress(createOrderInput.orderInput.srcToken),\n \"srcToken must be ETH\"\n );\n assert(depositAmount > 0n, \"depositAmount must be greater than 0\");\n\n // sign depositTx + POST order\n\n const { signal } = createOrderInput;\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n try {\n const orderToPost = await createOrderToPost(createOrderInput);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n const depositTxHash = await sendDepositPreSignTx({\n orderHash: orderToPost.orderHash,\n depositAmount: depositAmount.toString(),\n signal,\n });\n\n if (onTxSent) {\n const depositTxReceiptPromise = ensureTxReceipt({\n hash: depositTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\n \"[DepositAndSubmit] onReplaced:txHash\",\n depositTxHash,\n data\n );\n },\n });\n\n logger.log(\n \"[DepositAndSubmit] awaiting depositNativeAndPreSign txHash:\",\n depositTxHash\n );\n\n onTxSent({\n chainId,\n action: \"depositNativeAndPreSign\",\n receiptPromise: depositTxReceiptPromise,\n transactionHash: depositTxHash,\n transactionSpecificData: {\n action: \"depositNativeAndPreSign\",\n order: orderToPost,\n depositAmount,\n },\n });\n }\n\n // POST the Order to API with signature=0x\n const orderFromAPI = await guardUnpostedDeltaOrder({\n order: {\n ...orderToPost,\n timestamp: Date.now(),\n transactionHash: depositTxHash,\n },\n cb: () => postOrder(orderToPost),\n });\n\n return orderFromAPI;\n } catch (error) {\n logger.error(\"[DepositAndSubmit] error\", error);\n throw error;\n }\n };\n}\n"],"names":["depositAndSubmitOrderFactory","createOrderToPost","sendDepositPreSignTx","postOrder","ensureTxReceipt","logger","chainId","depositAmount","_depositAmount","createOrderInput","onTxSent","BigInt","assert","isETHaddress","orderInput","srcToken","signal","throwIfAborted","orderToPost","depositTxHash","orderHash","toString","depositTxReceiptPromise","hash","onReplaced","data","log","action","receiptPromise","transactionHash","transactionSpecificData","order","orderFromAPI","guardUnpostedDeltaOrder","timestamp","Date","now","cb","error"],"mappings":";;;;AAkDO,SAASA,4BAAAA,CAOd;AAAA,EACAC,iBAAAA;AAAAA,EACAC,oBAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,eAAAA;AAAAA,EACAC,MAAAA;AAAAA,EACAC;AAKF,CAAA,EAAsD;AACpD,EAAA,OAAO,OAAO;AAAA,IACZC,aAAAA,EAAeC,cAAAA;AAAAA,IACfC,gBAAAA;AAAAA,IACAC;AAAAA,GACF,KAAM;AACJ,IAAA,MAAMH,aAAAA,GAAgBI,OAAOH,cAAc,CAAA;AAE3CI,IAAAA,MAAAA,CACEC,YAAAA,CAAaJ,gBAAAA,CAAiBK,UAAAA,CAAWC,QAAQ,GACjD,sBACF,CAAA;AACAH,IAAAA,MAAAA,CAAOL,aAAAA,GAAgB,IAAI,sCAAsC,CAAA;AAIjE,IAAA,MAAM;AAAA,MAAES;AAAAA,KAAO,GAAIP,gBAAAA;AAGnBO,IAAAA,MAAAA,EAAQC,cAAAA,EAAe;AAEvB,IAAA,IAAI;AACF,MAAA,MAAMC,WAAAA,GAAc,MAAMjB,iBAAAA,CAAkBQ,gBAAgB,CAAA;AAG5DO,MAAAA,MAAAA,EAAQC,cAAAA,EAAe;AAEvB,MAAA,MAAME,aAAAA,GAAgB,MAAMjB,oBAAAA,CAAqB;AAAA,QAC/CkB,WAAWF,WAAAA,CAAYE,SAAAA;AAAAA,QACvBb,aAAAA,EAAeA,cAAcc,QAAAA,EAAS;AAAA,QACtCL;AAAAA,OACD,CAAA;AAED,MAAA,IAAIN,QAAAA,EAAU;AACZ,QAAA,MAAMY,0BAA0BlB,eAAAA,CAAgB;AAAA,UAC9CmB,IAAAA,EAAMJ,aAAAA;AAAAA,UACNb,OAAAA;AAAAA,UACAkB,YAAaC,CAAAA,IAAAA,KAAS;AACpBpB,YAAAA,MAAAA,CAAOqB,GAAAA,CACL,sCAAA,EACAP,aAAAA,EACAM,IACF,CAAA;AAAA,UACF;AAAA,SACD,CAAA;AAEDpB,QAAAA,MAAAA,CAAOqB,GAAAA,CACL,+DACAP,aACF,CAAA;AAEAT,QAAAA,QAAAA,CAAS;AAAA,UACPJ,OAAAA;AAAAA,UACAqB,MAAAA,EAAQ,yBAAA;AAAA,UACRC,cAAAA,EAAgBN,uBAAAA;AAAAA,UAChBO,eAAAA,EAAiBV,aAAAA;AAAAA,UACjBW,uBAAAA,EAAyB;AAAA,YACvBH,MAAAA,EAAQ,yBAAA;AAAA,YACRI,KAAAA,EAAOb,WAAAA;AAAAA,YACPX;AAAAA;AACF,SACD,CAAA;AAAA,MACH;AAGA,MAAA,MAAMyB,YAAAA,GAAe,MAAMC,uBAAAA,CAAwB;AAAA,QACjDF,KAAAA,EAAO;AAAA,UACL,GAAGb,WAAAA;AAAAA,UACHgB,SAAAA,EAAWC,KAAKC,GAAAA,EAAI;AAAA,UACpBP,eAAAA,EAAiBV;AAAAA,SACnB;AAAA,QACAkB,EAAAA,EAAIA,MAAMlC,SAAAA,CAAUe,WAAW;AAAA,OAChC,CAAA;AAED,MAAA,OAAOc,YAAAA;AAAAA,IACT,SAASM,KAAAA,EAAO;AACdjC,MAAAA,MAAAA,CAAOiC,KAAAA,CAAM,4BAA4BA,KAAK,CAAA;AAC9C,MAAA,MAAMA,KAAAA;AAAAA,IACR;AAAA,EACF,CAAA;AACF;;;;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { DeltaAuction, AdaptersContractsResult } from '@velora-dex/sdk';
|
|
2
|
+
import { PreSignOrderToPost } from '../../../prices/delta/mutations/types';
|
|
3
|
+
import { TxParams } from '../../../../batch/useBatchWithApproveTxs';
|
|
4
|
+
import { SendCalls } from '../../../../batch/useSendBatchTx';
|
|
5
|
+
import { EnsureCallsStatusFn } from '../../../../../transactions/queries/ensureCallsStatus';
|
|
6
|
+
import { Address, Hex } from 'viem';
|
|
7
|
+
import { SupportedChainId } from '../../../../../lib/web3/wagmi/types';
|
|
8
|
+
import { LoggerInstance } from '../../../../../lib/utils/logger';
|
|
9
|
+
import { ApprovalFlowResult } from '../types';
|
|
10
|
+
import { CallsSentObject } from '../../../../../lib/utils/transactionHandlers';
|
|
11
|
+
type PreSignableOrderResult<TOrderToPost> = {
|
|
12
|
+
orderToPost: TOrderToPost;
|
|
13
|
+
preSignCalldata: Hex;
|
|
14
|
+
};
|
|
15
|
+
export type AddTxWithApprovals = (options: {
|
|
16
|
+
txsParams: [TxParams, ...TxParams[]];
|
|
17
|
+
approveProps?: Pick<ApprovalFlowResult, "spender" | "allowanceToSet" | "token" | "chainId">[];
|
|
18
|
+
}) => Promise<{
|
|
19
|
+
calls: [TxParams, ...TxParams[]];
|
|
20
|
+
}>;
|
|
21
|
+
export type PreSignAndSubmitOrderInput<TCreateInput extends {
|
|
22
|
+
signal?: AbortSignal;
|
|
23
|
+
}> = {
|
|
24
|
+
createOrderInput: TCreateInput;
|
|
25
|
+
approval: Pick<ApprovalFlowResult, "spender" | "allowanceToSet" | "token" | "chainId">;
|
|
26
|
+
onTxSent?: (txSent: CallsSentObject) => void;
|
|
27
|
+
};
|
|
28
|
+
export type PreSignAndSubmitOrderFunc<TCreateInput extends {
|
|
29
|
+
signal?: AbortSignal;
|
|
30
|
+
}, TAuction extends DeltaAuction> = (input: PreSignAndSubmitOrderInput<TCreateInput>) => Promise<TAuction>;
|
|
31
|
+
type PreSignAndSubmitOrderFactoryDeps<TOrderToPost extends PreSignOrderToPost, TAuction extends DeltaAuction, TCreateInput extends {
|
|
32
|
+
signal?: AbortSignal;
|
|
33
|
+
}> = {
|
|
34
|
+
createPreSignableOrder: (input: TCreateInput) => Promise<PreSignableOrderResult<TOrderToPost>>;
|
|
35
|
+
postOrder: (order: TOrderToPost) => Promise<TAuction>;
|
|
36
|
+
addTxWithApprovals: AddTxWithApprovals;
|
|
37
|
+
sendCalls: SendCalls;
|
|
38
|
+
ensureCallsStatus: EnsureCallsStatusFn;
|
|
39
|
+
ensureContractsLoaded: (params: {
|
|
40
|
+
signal?: AbortSignal;
|
|
41
|
+
}) => Promise<AdaptersContractsResult>;
|
|
42
|
+
logger: LoggerInstance;
|
|
43
|
+
chainId: SupportedChainId;
|
|
44
|
+
account?: Address;
|
|
45
|
+
};
|
|
46
|
+
export declare function preSignAndSubmitOrderFactory<TOrderToPost extends PreSignOrderToPost, TAuction extends DeltaAuction, TCreateInput extends {
|
|
47
|
+
signal?: AbortSignal;
|
|
48
|
+
}>({ createPreSignableOrder, postOrder, addTxWithApprovals, sendCalls, ensureCallsStatus, ensureContractsLoaded, logger, chainId, account, }: PreSignAndSubmitOrderFactoryDeps<TOrderToPost, TAuction, TCreateInput>): PreSignAndSubmitOrderFunc<TCreateInput, TAuction>;
|
|
49
|
+
export {};
|
|
50
|
+
//# sourceMappingURL=preSignAndSubmitOrderFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preSignAndSubmitOrderFactory.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { isAddress } from 'viem';
|
|
2
|
+
import { assert } from 'ts-essentials';
|
|
3
|
+
import { guardUnpostedDeltaOrder } from '../../../prices/delta/orders/unposted/index.js';
|
|
4
|
+
|
|
5
|
+
function preSignAndSubmitOrderFactory({
|
|
6
|
+
createPreSignableOrder,
|
|
7
|
+
postOrder,
|
|
8
|
+
addTxWithApprovals,
|
|
9
|
+
sendCalls,
|
|
10
|
+
ensureCallsStatus,
|
|
11
|
+
ensureContractsLoaded,
|
|
12
|
+
logger,
|
|
13
|
+
chainId,
|
|
14
|
+
account
|
|
15
|
+
}) {
|
|
16
|
+
return async ({
|
|
17
|
+
createOrderInput,
|
|
18
|
+
approval,
|
|
19
|
+
onTxSent
|
|
20
|
+
}) => {
|
|
21
|
+
const {
|
|
22
|
+
signal
|
|
23
|
+
} = createOrderInput;
|
|
24
|
+
const {
|
|
25
|
+
orderToPost,
|
|
26
|
+
preSignCalldata
|
|
27
|
+
} = await createPreSignableOrder(createOrderInput);
|
|
28
|
+
signal?.throwIfAborted();
|
|
29
|
+
const {
|
|
30
|
+
ParaswapDelta: DeltaContract
|
|
31
|
+
} = await ensureContractsLoaded({
|
|
32
|
+
signal
|
|
33
|
+
});
|
|
34
|
+
assert(DeltaContract && isAddress(DeltaContract), `DeltaContract is not available on chain ${chainId}`);
|
|
35
|
+
const txsParams = [{
|
|
36
|
+
to: DeltaContract,
|
|
37
|
+
account,
|
|
38
|
+
data: preSignCalldata,
|
|
39
|
+
value: 0n,
|
|
40
|
+
chainId
|
|
41
|
+
}];
|
|
42
|
+
const needToApprove = approval.allowanceToSet && approval.allowanceToSet > 0n && approval.spender;
|
|
43
|
+
const approveProps = needToApprove ? [{
|
|
44
|
+
spender: approval.spender,
|
|
45
|
+
allowanceToSet: approval.allowanceToSet,
|
|
46
|
+
token: approval.token,
|
|
47
|
+
chainId: approval.chainId
|
|
48
|
+
}] : void 0;
|
|
49
|
+
try {
|
|
50
|
+
const {
|
|
51
|
+
calls
|
|
52
|
+
} = await addTxWithApprovals({
|
|
53
|
+
txsParams,
|
|
54
|
+
approveProps
|
|
55
|
+
});
|
|
56
|
+
signal?.throwIfAborted();
|
|
57
|
+
const sendCallsResult = await sendCalls({
|
|
58
|
+
txsParams: calls
|
|
59
|
+
});
|
|
60
|
+
signal?.throwIfAborted();
|
|
61
|
+
if (onTxSent) {
|
|
62
|
+
const sendCallsReceiptPromise = ensureCallsStatus({
|
|
63
|
+
id: sendCallsResult.id
|
|
64
|
+
}).then((status) => status.receipts?.[status.receipts.length - 1]);
|
|
65
|
+
logger.log("~ deltaOrder ~ setPreSignature calls id :", sendCallsResult.id);
|
|
66
|
+
onTxSent({
|
|
67
|
+
chainId,
|
|
68
|
+
action: "preSignDeltaOrder",
|
|
69
|
+
callsId: sendCallsResult.id,
|
|
70
|
+
receiptPromise: sendCallsReceiptPromise,
|
|
71
|
+
transactionSpecificData: {
|
|
72
|
+
action: "preSignDeltaOrder",
|
|
73
|
+
order: orderToPost
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
const orderFromAPI = await guardUnpostedDeltaOrder({
|
|
78
|
+
order: {
|
|
79
|
+
...orderToPost,
|
|
80
|
+
timestamp: Date.now(),
|
|
81
|
+
callsId: sendCallsResult.id
|
|
82
|
+
},
|
|
83
|
+
cb: () => postOrder(orderToPost)
|
|
84
|
+
});
|
|
85
|
+
return orderFromAPI;
|
|
86
|
+
} catch (error) {
|
|
87
|
+
logger.error("Pre-sign and submit Order error", error);
|
|
88
|
+
throw error;
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export { preSignAndSubmitOrderFactory };
|
|
94
|
+
//# sourceMappingURL=preSignAndSubmitOrderFactory.js.map
|