@velora-dex/widget 0.6.0 → 0.6.1-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/assets/two-dots.js +32 -0
- package/dist/assets/two-dots.js.map +1 -0
- 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 +54 -54
- 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 +27 -27
- 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 +153 -149
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.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 +2 -4
- package/dist/components/widget/Duration/Duration.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js +56 -57
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +7 -8
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +59 -65
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/types.d.ts +3 -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 +22 -19
- package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
- package/dist/components/widget/NumberInput/NumberInput.d.ts +19 -0
- package/dist/components/widget/NumberInput/NumberInput.d.ts.map +1 -0
- package/dist/components/widget/NumberInput/NumberInput.js +104 -0
- package/dist/components/widget/NumberInput/NumberInput.js.map +1 -0
- package/dist/components/widget/NumberInput/assets/arrow-down.js +20 -0
- package/dist/components/widget/NumberInput/assets/arrow-down.js.map +1 -0
- package/dist/components/widget/NumberInput/assets/arrow-up.js +20 -0
- package/dist/components/widget/NumberInput/assets/arrow-up.js.map +1 -0
- package/dist/components/widget/OtcOrderItem/utils.d.ts.map +1 -1
- package/dist/components/widget/OtcOrderItem/utils.js +4 -2
- package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +34 -30
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/SwapRate/SwapRate.d.ts +2 -9
- package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
- package/dist/components/widget/SwapRate/SwapRate.js +22 -18
- package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
- package/dist/components/widget/SwapRate/types.d.ts +13 -0
- package/dist/components/widget/SwapRate/types.d.ts.map +1 -0
- package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts +7 -0
- package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts.map +1 -0
- package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js +50 -0
- package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -0
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +91 -99
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +12 -26
- 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 +77 -55
- 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 +80 -63
- 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 +20 -15
- 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 +112 -0
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -0
- package/dist/components/widget/TradeOverview/steps.d.ts +37 -4
- package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/steps.js +17 -5
- package/dist/components/widget/TradeOverview/steps.js.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +4 -2
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.js +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
- package/dist/components/widget/Twap/CustomDurationDrawer.d.ts +7 -0
- package/dist/components/widget/Twap/CustomDurationDrawer.d.ts.map +1 -0
- package/dist/components/widget/Twap/CustomDurationDrawer.js +150 -0
- package/dist/components/widget/Twap/CustomDurationDrawer.js.map +1 -0
- package/dist/components/widget/Twap/OrderDuration.d.ts +11 -0
- package/dist/components/widget/Twap/OrderDuration.d.ts.map +1 -0
- package/dist/components/widget/Twap/OrderDuration.js +92 -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 +40 -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 +42 -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 +21 -0
- package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -0
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/configurator/components/FormPropsInputs.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 +25 -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 +15 -0
- package/dist/core/TwapDetails.js.map +1 -0
- package/dist/core/Warnings.d.ts +2 -1
- package/dist/core/Warnings.d.ts.map +1 -1
- package/dist/core/Warnings.js +143 -92
- package/dist/core/Warnings.js.map +1 -1
- package/dist/core/across/isCrosschainPossible.d.ts +1 -1
- 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 +110 -77
- 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 +377 -283
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/types.d.ts +1 -1
- package/dist/core/inputs/hooks/types.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +7 -7
- package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +108 -124
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useWarningMessage.d.ts +10 -0
- package/dist/core/inputs/hooks/useWarningMessage.d.ts.map +1 -0
- package/dist/core/inputs/hooks/useWarningMessage.js +30 -0
- package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -0
- package/dist/core/inputs/state/common.d.ts +4 -0
- package/dist/core/inputs/state/common.d.ts.map +1 -1
- package/dist/core/inputs/state/common.js +96 -55
- 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 +77 -79
- 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/limit/useLimitTokenFromInputProps.js +41 -41
- package/dist/core/limit/useLimitTokenToInputProps.js +45 -45
- package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenFromInputProps.js +39 -39
- package/dist/core/otc/useOtcTokenToInputProps.js +4 -4
- 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 +39 -18
- 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/configEffectAtom.d.ts.map +1 -1
- package/dist/core/state/configEffectAtom.js +18 -19
- package/dist/core/state/configEffectAtom.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 +49 -31
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/core/swapDetails/priceImpact.d.ts +2 -2
- package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
- package/dist/core/swapDetails/priceImpact.js.map +1 -1
- package/dist/core/swapDetails/types.d.ts +4 -0
- package/dist/core/swapDetails/types.d.ts.map +1 -0
- package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
- package/dist/core/swapDetails/useSwapDetailsListProps.js +78 -106
- package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
- package/dist/core/twap/state/constants.d.ts +26 -0
- package/dist/core/twap/state/constants.d.ts.map +1 -0
- package/dist/core/twap/state/constants.js +23 -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 +7 -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 +12 -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 +114 -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 +15 -0
- package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -0
- package/dist/core/twap/state/twapParamsAtom.d.ts +25 -0
- package/dist/core/twap/state/twapParamsAtom.d.ts.map +1 -0
- package/dist/core/twap/state/twapParamsAtom.js +19 -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 +8 -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 +14 -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 +10 -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 +33 -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 +81 -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 +165 -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 +19 -0
- package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -0
- package/dist/core/twap/useTwapTokenToInputProps.d.ts +10 -0
- package/dist/core/twap/useTwapTokenToInputProps.d.ts.map +1 -0
- package/dist/core/twap/useTwapTokenToInputProps.js +114 -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 +16 -9
- 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 +57 -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 +9 -7
- 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 +4 -4
- package/dist/events/hooks/useActivateEffects.js.map +1 -1
- package/dist/events/types/common.d.ts +8 -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 +0 -3
- package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -1
- package/dist/hooks/permit/utils/deadlines.js +5 -12
- 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/bridge/utils.js +9 -12
- package/dist/hooks/swap/prices/delta/bridge/utils.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 +42 -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 +77 -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 +121 -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 +42 -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 +135 -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 +39 -0
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts +12 -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 +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/useIsDeltaOrderCancellable.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.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 +16 -22
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +4 -4
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +81 -78
- 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 -12
- package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts +22 -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 +32 -22
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts +45 -16
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +121 -21
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +0 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.d.ts +10 -2
- package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.js +9 -5
- package/dist/hooks/swap/prices/delta/queries/errors.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 +6 -6
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +62 -61
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +15 -19
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +63 -72
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.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 +56 -55
- 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 +9 -10
- package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -0
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +115 -112
- 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 +31 -0
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -0
- package/dist/hooks/swap/prices/useTwapPrices.d.ts +45 -0
- package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -0
- package/dist/hooks/swap/prices/useTwapPrices.js +98 -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 +55 -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 +59 -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 +2 -0
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +14 -13
- 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 +114 -126
- 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 +132 -143
- 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 +91 -91
- 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 +129 -134
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +6 -7
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +181 -178
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +91 -0
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js +368 -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 +84 -0
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -0
- package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
- package/dist/hooks/tokens/prices/queries.js +12 -12
- package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.d.ts +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
- package/dist/hooks/useBridgeInfo.d.ts +1 -1
- package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
- package/dist/hooks/useBridgeInfo.js.map +1 -1
- package/dist/hooks/useIsCrosschainPossible.d.ts +1 -1
- package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
- package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
- package/dist/hooks/useSDK.d.ts +4 -4
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js +30 -30
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/hooks/useSelectableDestChains.d.ts +1 -1
- package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
- package/dist/hooks/useSelectableDestChains.js.map +1 -1
- package/dist/hooks/useSlippage.d.ts.map +1 -1
- package/dist/hooks/useSlippage.js +14 -13
- 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 +2 -0
- package/dist/lib/constants/time.d.ts.map +1 -1
- package/dist/lib/constants/time.js +2 -2
- package/dist/lib/constants/time.js.map +1 -1
- package/dist/lib/queryClient.js +1 -1
- package/dist/lib/queryClient.js.map +1 -1
- package/dist/lib/tradeMode.d.ts +9 -1
- package/dist/lib/tradeMode.d.ts.map +1 -1
- package/dist/lib/tradeMode.js +9 -4
- package/dist/lib/tradeMode.js.map +1 -1
- package/dist/lib/utils/delta.d.ts +10 -0
- package/dist/lib/utils/delta.d.ts.map +1 -1
- package/dist/lib/utils/delta.js +31 -18
- package/dist/lib/utils/delta.js.map +1 -1
- package/dist/lib/utils/index.d.ts +22 -0
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +27 -15
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/scaleFactor.d.ts +3 -0
- package/dist/lib/utils/scaleFactor.d.ts.map +1 -0
- package/dist/lib/utils/scaleFactor.js +13 -0
- package/dist/lib/utils/scaleFactor.js.map +1 -0
- 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 +3 -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 +24 -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 +1 -1
- package/dist/tokens/defaultTokens.js.map +1 -1
- package/dist/transactions/types.d.ts +4 -4
- package/dist/transactions/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/hooks/swap/prices/delta/queries/utils.d.ts +0 -4
- package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/utils.js +0 -15
- package/dist/hooks/swap/prices/delta/queries/utils.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"currentTwapInputAtom.js","names":[],"sources":["../../../../src/core/twap/state/currentTwapInputAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\n\nexport const currentTwapInputAtom = atom<\"from\" | \"to\">(\"from\");\n"],"mappings":";;AAEA,IAAa,IAAuB,EAAoB,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isCrosschainAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/isCrosschainAtom.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,+BAO/B,CAAC;AAEH,eAAO,MAAM,mBAAmB,eAE/B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { useAtomValue as e } from "../../store.js";
|
|
2
|
+
import { twapTokenFromAtom as t, twapTokenToAtom as n } from "./twapTokenAtoms.js";
|
|
3
|
+
import { atom as r } from "jotai";
|
|
4
|
+
//#region src/core/twap/state/isCrosschainAtom.ts
|
|
5
|
+
var i = r((e) => {
|
|
6
|
+
let r = e(t), i = e(n);
|
|
7
|
+
return i ? r.network !== i.network : !1;
|
|
8
|
+
}), a = () => e(i);
|
|
9
|
+
//#endregion
|
|
10
|
+
export { i as isTwapCrossChainAtom, a as useIsTwapCrossChain };
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=isCrosschainAtom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isCrosschainAtom.js","names":["atom","useAtomValue","twapTokenFromAtom","twapTokenToAtom","isTwapCrossChainAtom","get","tokenFrom","tokenTo","network","useIsTwapCrossChain"],"sources":["../../../../src/core/twap/state/isCrosschainAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\n\nexport const isTwapCrossChainAtom = atom((get) => {\n const tokenFrom = get(twapTokenFromAtom);\n const tokenTo = get(twapTokenToAtom);\n\n if (!tokenTo) return false;\n\n return tokenFrom.network !== tokenTo.network;\n});\n\nexport const useIsTwapCrossChain = () => {\n return useAtomValue(isTwapCrossChainAtom);\n};\n"],"mappings":";;;;AAIA,IAAaI,IAAuBJ,GAAMK,MAAQ;CAChD,IAAMC,IAAYD,EAAIH,EAAkB,EAClCK,IAAUF,EAAIF,EAAgB;AAIpC,QAFKI,IAEED,EAAUE,YAAYD,EAAQC,UAFhB;EAGrB,EAEWC,UACJR,EAAaG,EAAqB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Token } from '../../../tokens/state/types';
|
|
2
|
+
import { SupportedChainId } from '../../../lib/web3/wagmi/types';
|
|
3
|
+
export declare const switchTwapTokensAtom: import('jotai').WritableAtom<null, [], Promise<void>> & {
|
|
4
|
+
init: null;
|
|
5
|
+
};
|
|
6
|
+
export declare const selectTwapTokenFromAtom: import('jotai').WritableAtom<null, [newTokenFrom: Token], Promise<void>> & {
|
|
7
|
+
init: null;
|
|
8
|
+
};
|
|
9
|
+
export declare const selectTwapTokenToAtom: import('jotai').WritableAtom<null, [newTokenTo: Token], Promise<void>> & {
|
|
10
|
+
init: null;
|
|
11
|
+
};
|
|
12
|
+
export declare const syncTwapTokensAfterChainSwitch: (chainId: SupportedChainId) => void;
|
|
13
|
+
//# sourceMappingURL=selectedTokenActionsAtom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selectedTokenActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAYlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,eAAO,MAAM,oBAAoB;;CAwB/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;CAgEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAoGjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,SAAS,gBAAgB,SA+DvE,CAAC"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { jotaiStore as e } from "../../store.js";
|
|
2
|
+
import { wagmiConfig as t } from "../../../lib/web3/wagmi/config.js";
|
|
3
|
+
import { pickDefaultTokenPair as n } from "../../../tokens/defaultTokens.js";
|
|
4
|
+
import { twapTokenFromAtom as r, twapTokenToAtom as i } from "./twapTokenAtoms.js";
|
|
5
|
+
import { enabledSrcChainsAtom as a } from "../../state/enabledChainsAtom.js";
|
|
6
|
+
import { areTokensSame as o } from "../../../tokens/utils/areTokensSame.js";
|
|
7
|
+
import { findFirstTokenFromAcross as s, isTokenFromAcross as c } from "../../across/utils.js";
|
|
8
|
+
import { allTokensByChainAtom as l } from "../../../tokens/state/allTokensByChainAtom.js";
|
|
9
|
+
import { switchChain as u } from "../../../lib/web3/wagmi/switchChain.js";
|
|
10
|
+
import { getSelectableDestChains as d } from "../../state/getSelectableDestChains.js";
|
|
11
|
+
import { isCrosschainPossible as f } from "../../across/isCrosschainPossible.js";
|
|
12
|
+
import { atom as p } from "jotai";
|
|
13
|
+
//#region src/core/twap/state/selectedTokenActionsAtom.ts
|
|
14
|
+
var m = p(null, async (e, t) => {
|
|
15
|
+
let n = e(i);
|
|
16
|
+
if (!n || !e(a).includes(n.network)) return;
|
|
17
|
+
let o = e(r), s = o.network;
|
|
18
|
+
t(r, n), t(g, o);
|
|
19
|
+
let c = e(r);
|
|
20
|
+
c.network !== s && u({ chainId: c.network });
|
|
21
|
+
}), h = p(null, async (e, a, d) => {
|
|
22
|
+
let p = e(r), m = e(i), h = p;
|
|
23
|
+
if (a(r, d), p = d, p.network !== t.state.chainId && u({ chainId: p.network }), m) if (f({
|
|
24
|
+
get: e,
|
|
25
|
+
chainIdFrom: p.network,
|
|
26
|
+
chainIdTo: m.network,
|
|
27
|
+
mode: "twap"
|
|
28
|
+
})) c({
|
|
29
|
+
token: m,
|
|
30
|
+
fromChainId: p.network,
|
|
31
|
+
toChainId: m.network,
|
|
32
|
+
mode: "twap"
|
|
33
|
+
}) || a(i, s({
|
|
34
|
+
fromChainId: p.network,
|
|
35
|
+
toChainId: m.network,
|
|
36
|
+
listByChainId: e(l).listByChainId,
|
|
37
|
+
mode: "twap"
|
|
38
|
+
}));
|
|
39
|
+
else if (p.network !== m.network) {
|
|
40
|
+
let [e, t] = n(p.network, "twap");
|
|
41
|
+
m = o(p, t) ? e : t, a(i, m);
|
|
42
|
+
} else o(p, m) && (m = h, a(i, m));
|
|
43
|
+
}), g = p(null, async (e, s, l) => {
|
|
44
|
+
let p = e(r);
|
|
45
|
+
if (!d(e, {
|
|
46
|
+
fromChainId: p.network,
|
|
47
|
+
mode: "twap"
|
|
48
|
+
}).includes(l.network)) return;
|
|
49
|
+
let m = e(i), h = m;
|
|
50
|
+
if (s(i, l), m = l, o(m, p)) {
|
|
51
|
+
let [e, t] = n(m.network, "twap"), i = o(p, e) ? t : e, a = h && p.network !== h.network ? i : h ?? i;
|
|
52
|
+
s(r, a), p = a;
|
|
53
|
+
}
|
|
54
|
+
let g = !1, _ = f({
|
|
55
|
+
get: e,
|
|
56
|
+
chainIdFrom: p.network,
|
|
57
|
+
chainIdTo: m.network,
|
|
58
|
+
mode: "twap"
|
|
59
|
+
});
|
|
60
|
+
_ && (c({
|
|
61
|
+
token: m,
|
|
62
|
+
fromChainId: p.network,
|
|
63
|
+
toChainId: m.network,
|
|
64
|
+
mode: "twap"
|
|
65
|
+
}) || (g = !0)), p.network !== m.network && !_ && (g = !0);
|
|
66
|
+
let v = e(a);
|
|
67
|
+
if (g) {
|
|
68
|
+
let t = m.network;
|
|
69
|
+
if (!v.includes(m.network)) {
|
|
70
|
+
for (let n of v) if (f({
|
|
71
|
+
get: e,
|
|
72
|
+
chainIdFrom: n,
|
|
73
|
+
chainIdTo: m.network,
|
|
74
|
+
mode: "twap"
|
|
75
|
+
})) {
|
|
76
|
+
t = n;
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
let [i, a] = n(t, "twap"), c = o(m, i) ? a : i;
|
|
81
|
+
s(r, c), p = c;
|
|
82
|
+
}
|
|
83
|
+
p.network !== t.state.chainId && u({ chainId: p.network });
|
|
84
|
+
}), _ = (t) => {
|
|
85
|
+
if (!e.get(a).includes(t)) return;
|
|
86
|
+
let o = e.get(r);
|
|
87
|
+
if (o.network === t) return;
|
|
88
|
+
let [u, p] = n(t, "twap");
|
|
89
|
+
e.set(r, u), o = u;
|
|
90
|
+
let m = e.get(i);
|
|
91
|
+
m && (f({
|
|
92
|
+
get: e.get,
|
|
93
|
+
chainIdFrom: t,
|
|
94
|
+
chainIdTo: m.network,
|
|
95
|
+
mode: "twap"
|
|
96
|
+
}) ? c({
|
|
97
|
+
token: m,
|
|
98
|
+
fromChainId: t,
|
|
99
|
+
toChainId: m.network,
|
|
100
|
+
mode: "twap"
|
|
101
|
+
}) || (m = s({
|
|
102
|
+
fromChainId: t,
|
|
103
|
+
toChainId: m.network,
|
|
104
|
+
listByChainId: e.get(l).listByChainId,
|
|
105
|
+
mode: "twap"
|
|
106
|
+
}), e.set(i, m)) : d(e.get, {
|
|
107
|
+
fromChainId: o.network,
|
|
108
|
+
mode: "twap"
|
|
109
|
+
}).includes(t) ? (m = p, e.set(i, m)) : (m = void 0, e.set(i, m)));
|
|
110
|
+
};
|
|
111
|
+
//#endregion
|
|
112
|
+
export { h as selectTwapTokenFromAtom, g as selectTwapTokenToAtom, m as switchTwapTokensAtom, _ as syncTwapTokensAfterChainSwitch };
|
|
113
|
+
|
|
114
|
+
//# sourceMappingURL=selectedTokenActionsAtom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selectedTokenActionsAtom.js","names":["pickDefaultTokenPair","areTokensSame","atom","twapTokenFromAtom","twapTokenToAtom","Token","wagmiConfig","switchChain","isCrosschainPossible","findFirstTokenFromAcross","isTokenFromAcross","allTokensByChainAtom","getSelectableDestChains","enabledSrcChainsAtom","jotaiStore","SupportedChainId","switchTwapTokensAtom","get","set","tokenTo","enabledSrcChains","includes","network","tokenFrom","initChainFrom","selectTwapTokenToAtom","currentTokenFrom","chainId","selectTwapTokenFromAtom","newTokenFrom","initTokenFrom","state","crosschainPossible","chainIdFrom","chainIdTo","mode","isTokenToFromAcross","token","fromChainId","toChainId","maybeAcrossToken","listByChainId","defaultTokenFrom","defaultTokenTo","newTokenTo","selectableDestChains","initTokenTo","defaultToken","wasCrosschain","needResetTokenFrom","firstPossibleSrcChain","srcChain","syncTwapTokensAfterChainSwitch","undefined"],"sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { atom } from \"jotai\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { isCrosschainPossible } from \"@/core/across/isCrosschainPossible\";\nimport {\n findFirstTokenFromAcross,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { getSelectableDestChains } from \"@/core/state/getSelectableDestChains\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { jotaiStore } from \"@/core/store\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nexport const switchTwapTokensAtom = atom(null, async (get, set) => {\n const tokenTo = get(twapTokenToAtom);\n\n if (!tokenTo) return;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(tokenTo.network)) return;\n\n const tokenFrom = get(twapTokenFromAtom);\n const initChainFrom = tokenFrom.network;\n\n // set tokenFrom as is\n set(twapTokenFromAtom, tokenTo);\n // set tokenTo, including running all crosschain logic inside\n set(selectTwapTokenToAtom, tokenFrom);\n\n const currentTokenFrom = get(twapTokenFromAtom);\n\n // switch a token from a different chain?\n if (currentTokenFrom.network !== initChainFrom) {\n switchChain({\n chainId: currentTokenFrom.network,\n });\n }\n});\n\nexport const selectTwapTokenFromAtom = atom(\n null,\n async (get, set, newTokenFrom: Token) => {\n let tokenFrom = get(twapTokenFromAtom);\n let tokenTo = get(twapTokenToAtom);\n const initTokenFrom = tokenFrom;\n\n // set the tokenFrom\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n\n // selecting a token from a different chain?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"twap\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n mode: \"twap\",\n });\n\n set(twapTokenToAtom, maybeAcrossToken);\n }\n } else {\n if (tokenFrom.network !== tokenTo.network) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenFrom.network,\n \"twap\"\n );\n\n tokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(twapTokenToAtom, tokenTo);\n } else {\n if (areTokensSame(tokenFrom, tokenTo)) {\n tokenTo = initTokenFrom;\n set(twapTokenToAtom, tokenTo);\n }\n }\n }\n }\n);\n\nexport const selectTwapTokenToAtom = atom(\n null,\n async (get, set, newTokenTo: Token) => {\n let tokenFrom = get(twapTokenFromAtom);\n\n const selectableDestChains = getSelectableDestChains(get, {\n fromChainId: tokenFrom.network,\n mode: \"twap\",\n });\n if (!selectableDestChains.includes(newTokenTo.network)) return;\n\n let tokenTo = get(twapTokenToAtom);\n const initTokenTo = tokenTo;\n\n set(twapTokenToAtom, newTokenTo);\n tokenTo = newTokenTo;\n\n if (areTokensSame(tokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network,\n \"twap\"\n );\n\n const defaultToken = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n const wasCrosschain =\n initTokenTo && tokenFrom.network !== initTokenTo.network;\n\n const newTokenFrom = wasCrosschain\n ? defaultToken\n : (initTokenTo ?? defaultToken);\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n let needResetTokenFrom = false;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"twap\",\n });\n\n if (!isTokenToFromAcross) {\n needResetTokenFrom = true;\n }\n }\n\n if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {\n needResetTokenFrom = true;\n }\n const enabledSrcChains = get(enabledSrcChainsAtom);\n\n if (needResetTokenFrom) {\n let firstPossibleSrcChain = tokenTo.network;\n if (!enabledSrcChains.includes(tokenTo.network)) {\n for (const srcChain of enabledSrcChains) {\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: srcChain,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n if (crosschainPossible) {\n firstPossibleSrcChain = srcChain;\n break;\n }\n }\n }\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n firstPossibleSrcChain,\n \"twap\"\n );\n const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n // ended up changing tokenFrom network?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n }\n);\n\nexport const syncTwapTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainId)) return;\n\n let tokenFrom = jotaiStore.get(twapTokenFromAtom);\n\n // chains are the same? do nothing\n if (tokenFrom.network === chainId) return;\n\n // get default tokens for the new chain\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n chainId,\n \"twap\"\n );\n\n // update tokenFrom\n jotaiStore.set(twapTokenFromAtom, defaultTokenFrom);\n tokenFrom = defaultTokenFrom;\n\n let tokenTo = jotaiStore.get(twapTokenToAtom);\n\n // toChainId derives from tokenTo.network, if no tokenTo - do nothing\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get: jotaiStore.get,\n chainIdFrom: chainId,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n mode: \"twap\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,\n mode: \"twap\",\n });\n\n tokenTo = maybeAcrossToken;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n } else {\n const selectableDestChains = getSelectableDestChains(jotaiStore.get, {\n fromChainId: tokenFrom.network,\n mode: \"twap\",\n });\n if (selectableDestChains.includes(chainId)) {\n tokenTo = defaultTokenTo;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n } else {\n tokenTo = undefined;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n }\n};\n"],"mappings":";;;;;;;;;;;;;AAkBA,IAAagB,IAAuBd,EAAK,MAAM,OAAOe,GAAKC,MAAQ;CACjE,IAAMC,IAAUF,EAAIb,EAAgB;AAKpC,KAHI,CAACe,KAGD,CADqBF,EAAIJ,EAAqB,CAC5BQ,SAASF,EAAQG,QAAQ,CAAE;CAEjD,IAAMC,IAAYN,EAAId,EAAkB,EAClCqB,IAAgBD,EAAUD;AAKhCJ,CAFAA,EAAIf,GAAmBgB,EAAQ,EAE/BD,EAAIO,GAAuBF,EAAU;CAErC,IAAMG,IAAmBT,EAAId,EAAkB;AAG/C,CAAIuB,EAAiBJ,YAAYE,KAC/BjB,EAAY,EACVoB,SAASD,EAAiBJ,SAC3B,CAAC;EAEJ,EAEWM,IAA0B1B,EACrC,MACA,OAAOe,GAAKC,GAAKW,MAAwB;CACvC,IAAIN,IAAYN,EAAId,EAAkB,EAClCgB,IAAUF,EAAIb,EAAgB,EAC5B0B,IAAgBP;AAGtBL,OAAIf,GAAmB0B,EAAa,EACpCN,IAAYM,GAGRN,EAAUD,YAAYhB,EAAYyB,MAAMJ,WAC1CpB,EAAY,EACVoB,SAASJ,EAAUD,SACpB,CAAC,EAGCH,EASL,KAP2BX,EAAqB;EAC9CS;EACAgB,aAAaV,EAAUD;EACvBY,WAAWf,EAAQG;EACnBa,MAAM;EACP,CAAC,EAG4BzB,EAAkB;EAC5C2B,OAAOlB;EACPmB,aAAaf,EAAUD;EACvBiB,WAAWpB,EAAQG;EACnBa,MAAM;EACP,CAAC,IAUAjB,EAAId,GAPqBK,EAAyB;EAChD6B,aAAaf,EAAUD;EACvBiB,WAAWpB,EAAQG;EACnBmB,eAAexB,EAAIN,EAAqB,CAAC8B;EACzCN,MAAM;EACP,CAAC,CAEoC;UAGpCZ,EAAUD,YAAYH,EAAQG,SAAS;EACzC,IAAM,CAACoB,GAAkBC,KAAkB3C,EACzCuB,EAAUD,SACV,OACD;AAKDJ,EAHAC,IAAUlB,EAAcsB,GAAWoB,EAAe,GAC9CD,IACAC,GACJzB,EAAId,GAAiBe,EAAQ;QAEzBlB,EAAcsB,GAAWJ,EAAQ,KACnCA,IAAUW,GACVZ,EAAId,GAAiBe,EAAQ;EAKtC,EAEYM,IAAwBvB,EACnC,MACA,OAAOe,GAAKC,GAAK0B,MAAsB;CACrC,IAAIrB,IAAYN,EAAId,EAAkB;AAMtC,KAAI,CAJyBS,EAAwBK,GAAK;EACxDqB,aAAaf,EAAUD;EACvBa,MAAM;EACP,CAAC,CACwBd,SAASuB,EAAWtB,QAAQ,CAAE;CAExD,IAAIH,IAAUF,EAAIb,EAAgB,EAC5B0C,IAAc3B;AAKpB,KAHAD,EAAId,GAAiBwC,EAAW,EAChCzB,IAAUyB,GAEN3C,EAAckB,GAASI,EAAU,EAAE;EACrC,IAAM,CAACmB,GAAkBC,KAAkB3C,EACzCmB,EAAQG,SACR,OACD,EAEKyB,IAAe9C,EAAcsB,GAAWmB,EAAiB,GAC3DC,IACAD,GAKEb,IAFJiB,KAAevB,EAAUD,YAAYwB,EAAYxB,UAG/CyB,IACCD,KAAeC;AAGpBxB,EADAL,EAAIf,GAAmB0B,EAAa,EACpCN,IAAYM;;CAGd,IAAIoB,IAAqB,IAEnBjB,IAAqBxB,EAAqB;EAC9CS;EACAgB,aAAaV,EAAUD;EACvBY,WAAWf,EAAQG;EACnBa,MAAM;EACP,CAAC;AAeF,CAbIH,MAC0BtB,EAAkB;EAC5C2B,OAAOlB;EACPmB,aAAaf,EAAUD;EACvBiB,WAAWpB,EAAQG;EACnBa,MAAM;EACP,CAAC,KAGAc,IAAqB,MAIrB1B,EAAUD,YAAYH,EAAQG,WAAW,CAACU,MAC5CiB,IAAqB;CAEvB,IAAM7B,IAAmBH,EAAIJ,EAAqB;AAElD,KAAIoC,GAAoB;EACtB,IAAIC,IAAwB/B,EAAQG;AACpC,MAAI,CAACF,EAAiBC,SAASF,EAAQG,QAAQ;QACxC,IAAM6B,KAAY/B,EAOrB,KAN2BZ,EAAqB;IAC9CS;IACAgB,aAAakB;IACbjB,WAAWf,EAAQG;IACnBa,MAAM;IACP,CAAC,EACsB;AACtBe,QAAwBC;AACxB;;;EAIN,IAAM,CAACT,GAAkBC,KAAkB3C,EACzCkD,GACA,OACD,EACKrB,IAAe5B,EAAckB,GAASuB,EAAiB,GACzDC,IACAD;AAGJnB,EADAL,EAAIf,GAAmB0B,EAAa,EACpCN,IAAYM;;AAId,CAAIN,EAAUD,YAAYhB,EAAYyB,MAAMJ,WAC1CpB,EAAY,EACVoB,SAASJ,EAAUD,SACpB,CAAC;EAGP,EAEY8B,KAAkCzB,MAA8B;AAE3E,KAAI,CADqBb,EAAWG,IAAIJ,EAAqB,CACvCQ,SAASM,EAAQ,CAAE;CAEzC,IAAIJ,IAAYT,EAAWG,IAAId,EAAkB;AAGjD,KAAIoB,EAAUD,YAAYK,EAAS;CAGnC,IAAM,CAACe,GAAkBC,KAAkB3C,EACzC2B,GACA,OACD;AAIDJ,CADAT,EAAWI,IAAIf,GAAmBuC,EAAiB,EACnDnB,IAAYmB;CAEZ,IAAIvB,IAAUL,EAAWG,IAAIb,EAAgB;AAGxCe,OAEsBX,EAAqB;EAC9CS,KAAKH,EAAWG;EAChBgB,aAAaN;EACbO,WAAWf,EAAQG;EACnBa,MAAM;EACP,CAAC,GAG4BzB,EAAkB;EAC5C2B,OAAOlB;EACPmB,aAAaX;EACbY,WAAWpB,EAAQG;EACnBa,MAAM;EACP,CAAC,KAUAhB,IAPyBV,EAAyB;EAChD6B,aAAaX;EACbY,WAAWpB,EAAQG;EACnBmB,eAAe3B,EAAWG,IAAIN,EAAqB,CAAC8B;EACpDN,MAAM;EACP,CAAC,EAGFrB,EAAWI,IAAId,GAAiBe,EAAQ,IAGbP,EAAwBE,EAAWG,KAAK;EACnEqB,aAAaf,EAAUD;EACvBa,MAAM;EACP,CAAC,CACuBd,SAASM,EAAQ,IACxCR,IAAUwB,GACV7B,EAAWI,IAAId,GAAiBe,EAAQ,KAExCA,IAAUkC,KAAAA,GACVvC,EAAWI,IAAId,GAAiBe,EAAQ"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const twapPayInputAmountAtom: import('jotai').PrimitiveAtom<string> & {
|
|
2
|
+
init: string;
|
|
3
|
+
};
|
|
4
|
+
export declare const twapReceiveInputAmountAtom: import('jotai').PrimitiveAtom<string> & {
|
|
5
|
+
init: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const twapPayInputAmountWeiAtom: import('jotai').Atom<string>;
|
|
8
|
+
export declare const twapReceiveInputAmountWeiAtom: import('jotai').Atom<string | undefined>;
|
|
9
|
+
//# sourceMappingURL=twapInputAmountAtom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapInputAmountAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB;;CAAY,CAAC;AAEhD,eAAO,MAAM,0BAA0B;;CAAY,CAAC;AAEpD,eAAO,MAAM,yBAAyB,8BAIpC,CAAC;AAEH,eAAO,MAAM,6BAA6B,0CAMxC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { twapTokenFromAtom as e, twapTokenToAtom as t } from "./twapTokenAtoms.js";
|
|
2
|
+
import { atom as n } from "jotai";
|
|
3
|
+
import { parseUnits as r } from "viem";
|
|
4
|
+
//#region src/core/twap/state/twapInputAmountAtom.ts
|
|
5
|
+
var i = n("0"), a = n("0"), o = n((t) => {
|
|
6
|
+
let n = t(e);
|
|
7
|
+
return r(t(i), n.decimals).toString();
|
|
8
|
+
}), s = n((e) => {
|
|
9
|
+
let n = e(t);
|
|
10
|
+
if (n) return r(e(a), n.decimals).toString();
|
|
11
|
+
});
|
|
12
|
+
//#endregion
|
|
13
|
+
export { i as twapPayInputAmountAtom, o as twapPayInputAmountWeiAtom, a as twapReceiveInputAmountAtom, s as twapReceiveInputAmountWeiAtom };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=twapInputAmountAtom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapInputAmountAtom.js","names":[],"sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { parseUnits } from \"viem\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\n\nexport const twapPayInputAmountAtom = atom(\"0\");\n\nexport const twapReceiveInputAmountAtom = atom(\"0\");\n\nexport const twapPayInputAmountWeiAtom = atom((get) => {\n const tokenFrom = get(twapTokenFromAtom);\n const payInputAmount = get(twapPayInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const twapReceiveInputAmountWeiAtom = atom((get) => {\n const tokenTo = get(twapTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(twapReceiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;AAIA,IAAa,IAAyB,EAAK,IAAI,EAElC,IAA6B,EAAK,IAAI,EAEtC,IAA4B,GAAM,MAAQ;CACrD,IAAM,IAAY,EAAI,EAAkB;AAExC,QAAO,EADgB,EAAI,EAAuB,EAChB,EAAU,SAAS,CAAC,UAAU;EAChE,EAEW,IAAgC,GAAM,MAAQ;CACzD,IAAM,IAAU,EAAI,EAAgB;AACpC,KAAI,EAEF,QAAO,EADoB,EAAI,EAA2B,EACpB,EAAQ,SAAS,CAAC,UAAU;EAEpE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const twapDurationAtom: import('jotai').WritableAtom<number, [newDuration: number], void> & {
|
|
2
|
+
init: number;
|
|
3
|
+
};
|
|
4
|
+
export declare const useTwapDuration: () => number;
|
|
5
|
+
export declare const userTwapSplitAtom: import('jotai').PrimitiveAtom<number> & {
|
|
6
|
+
init: number;
|
|
7
|
+
};
|
|
8
|
+
export declare const twapSplitAtom: import('jotai').Atom<number>;
|
|
9
|
+
export declare const useTwapSplit: () => number;
|
|
10
|
+
export declare const userTwapSlippageAtom: import('jotai').PrimitiveAtom<number> & {
|
|
11
|
+
init: number;
|
|
12
|
+
};
|
|
13
|
+
export declare const twapSlippageAtom: import('jotai').Atom<number>;
|
|
14
|
+
export declare const useTwapSlippage: () => number;
|
|
15
|
+
/**
|
|
16
|
+
* Derived atom that caches TWAP deadlines (orderDeadline, orderInterval).
|
|
17
|
+
* Recomputes only when twapDurationAtom or twapSplitAtom changes,
|
|
18
|
+
* keeping orderDeadline stable across unrelated form changes (token, amount, side, etc.).
|
|
19
|
+
*/
|
|
20
|
+
export declare const twapDeadlinesAtom: import('jotai').Atom<{
|
|
21
|
+
orderDeadline: number;
|
|
22
|
+
orderInterval: number;
|
|
23
|
+
}>;
|
|
24
|
+
export declare const useTwapSliceTooShort: () => boolean;
|
|
25
|
+
//# sourceMappingURL=twapParamsAtom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapParamsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapParamsAtom.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,gBAAgB;;CAS5B,CAAC;AAEF,eAAO,MAAM,eAAe,cAAuC,CAAC;AAGpE,eAAO,MAAM,iBAAiB;;CAA2B,CAAC;AAG1D,eAAO,MAAM,aAAa,8BAEzB,CAAC;AAEF,eAAO,MAAM,YAAY,cAAoC,CAAC;AAG9D,eAAO,MAAM,oBAAoB;;CAA8B,CAAC;AAGhE,eAAO,MAAM,gBAAgB,8BAM5B,CAAC;AAEF,eAAO,MAAM,eAAe,cAAuC,CAAC;AAEpE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;EAI5B,CAAC;AAEH,eAAO,MAAM,oBAAoB,eAKhC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { useAtomValue as e } from "../../store.js";
|
|
2
|
+
import { getNumberWithinRange as t } from "../../../lib/utils/index.js";
|
|
3
|
+
import { DEFAULT_TWAP_DURATION as n, TWAP_SLIPPAGE_MIN as r } from "./constants.js";
|
|
4
|
+
import { produceTwapDeadlines as i } from "../../../lib/utils/twap.js";
|
|
5
|
+
import { atom as a } from "jotai";
|
|
6
|
+
//#region src/core/twap/state/twapParamsAtom.ts
|
|
7
|
+
var o = a(n.value, (e, t, n) => {
|
|
8
|
+
t(o, Math.max(n, 5));
|
|
9
|
+
}), s = () => e(o), c = a(2), l = a((e) => t(e(c), 2, 100)), u = () => e(l), d = a(2), f = a((e) => t(e(d), r, 50)), p = () => e(f), m = a((e) => i({
|
|
10
|
+
durationMin: e(o),
|
|
11
|
+
numSlices: e(l)
|
|
12
|
+
})), h = () => {
|
|
13
|
+
let e = s(), t = u();
|
|
14
|
+
return e * 60 / t < 60;
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { m as twapDeadlinesAtom, o as twapDurationAtom, f as twapSlippageAtom, l as twapSplitAtom, s as useTwapDuration, h as useTwapSliceTooShort, p as useTwapSlippage, u as useTwapSplit, d as userTwapSlippageAtom, c as userTwapSplitAtom };
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=twapParamsAtom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapParamsAtom.js","names":["atom","useAtomValue","getNumberWithinRange","DEFAULT_TWAP_DURATION","DEFAULT_TWAP_SLIPPAGE","DEFAULT_TWAP_SPLIT","TWAP_SLIPPAGE_MAX","TWAP_SLIPPAGE_MIN","TWAP_SPLIT_MAX","TWAP_SPLIT_MIN","TWAP_CUSTOM_DURATION_MIN_MINUTES","TWAP_MIN_SLICE_INTERVAL_S","produceTwapDeadlines","twapDurationAtom","value","_","set","newDuration","clampedDuration","Math","max","useTwapDuration","userTwapSplitAtom","twapSplitAtom","get","useTwapSplit","userTwapSlippageAtom","twapSlippageAtom","useTwapSlippage","twapDeadlinesAtom","durationMin","numSlices","useTwapSliceTooShort","sliceIntervalSec"],"sources":["../../../../src/core/twap/state/twapParamsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { getNumberWithinRange } from \"@/lib/utils\";\nimport {\n DEFAULT_TWAP_DURATION,\n DEFAULT_TWAP_SLIPPAGE,\n DEFAULT_TWAP_SPLIT,\n TWAP_SLIPPAGE_MAX,\n TWAP_SLIPPAGE_MIN,\n TWAP_SPLIT_MAX,\n TWAP_SPLIT_MIN,\n TWAP_CUSTOM_DURATION_MIN_MINUTES,\n TWAP_MIN_SLICE_INTERVAL_S,\n} from \"./constants\";\nimport { produceTwapDeadlines } from \"@/lib/utils/twap\";\n\nexport const twapDurationAtom = atom(\n DEFAULT_TWAP_DURATION.value,\n (_, set, newDuration: number) => {\n const clampedDuration = Math.max(\n newDuration,\n TWAP_CUSTOM_DURATION_MIN_MINUTES\n );\n set(twapDurationAtom, clampedDuration);\n }\n);\n\nexport const useTwapDuration = () => useAtomValue(twapDurationAtom);\n\n// atom to track the user input, which can be out of range\nexport const userTwapSplitAtom = atom(DEFAULT_TWAP_SPLIT);\n\n// derived atom to ensure the actual split used in the order is always within range\nexport const twapSplitAtom = atom((get) =>\n getNumberWithinRange(get(userTwapSplitAtom), TWAP_SPLIT_MIN, TWAP_SPLIT_MAX)\n);\n\nexport const useTwapSplit = () => useAtomValue(twapSplitAtom);\n\n// atom to track the user input, which can be out of range\nexport const userTwapSlippageAtom = atom(DEFAULT_TWAP_SLIPPAGE);\n\n// derived atom to ensure the actual slippage used in the order is always within range\nexport const twapSlippageAtom = atom((get) =>\n getNumberWithinRange(\n get(userTwapSlippageAtom),\n TWAP_SLIPPAGE_MIN,\n TWAP_SLIPPAGE_MAX\n )\n);\n\nexport const useTwapSlippage = () => useAtomValue(twapSlippageAtom);\n\n/**\n * Derived atom that caches TWAP deadlines (orderDeadline, orderInterval).\n * Recomputes only when twapDurationAtom or twapSplitAtom changes,\n * keeping orderDeadline stable across unrelated form changes (token, amount, side, etc.).\n */\nexport const twapDeadlinesAtom = atom((get) => {\n const durationMin = get(twapDurationAtom);\n const numSlices = get(twapSplitAtom);\n return produceTwapDeadlines({ durationMin, numSlices });\n});\n\nexport const useTwapSliceTooShort = () => {\n const durationMin = useTwapDuration();\n const numSlices = useTwapSplit();\n const sliceIntervalSec = (durationMin * 60) / numSlices;\n return sliceIntervalSec < TWAP_MIN_SLICE_INTERVAL_S;\n};\n"],"mappings":";;;;;;AAgBA,IAAaa,IAAmBb,EAC9BG,EAAsBW,QACrBC,GAAGC,GAAKC,MAAwB;AAK/BD,GAAIH,GAJoBM,KAAKC,IAC3BH,GAAAA,EAED,CACqC;EAEzC,EAEYI,UAAwBpB,EAAaY,EAAiB,EAGtDS,IAAoBtB,EAAAA,EAAwB,EAG5CuB,IAAgBvB,GAAMwB,MACjCtB,EAAqBsB,EAAIF,EAAkB,EAAA,GAAA,IAC7C,CAAC,EAEYG,UAAqBxB,EAAasB,EAAc,EAGhDG,IAAuB1B,EAAAA,EAA2B,EAGlD2B,IAAmB3B,GAAMwB,MACpCtB,EACEsB,EAAIE,EAAqB,EACzBnB,GAAAA,GAGJ,CAAC,EAEYqB,UAAwB3B,EAAa0B,EAAiB,EAOtDE,IAAoB7B,GAAMwB,MAG9BZ,EAAqB;CAAEkB,aAFVN,EAAIX,EAAiB;CAEEkB,WADzBP,EAAID,EAAc;CACkB,CAAC,CACvD,EAEWS,UAAuB;CAClC,IAAAF,IAAoBT,GAAiB,EACrCU,IAAkBN,GAAc;AACwB,QAA9BK,IAAc,KAAMC,IAAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const twapReceiverAddressAtom: import('jotai').PrimitiveAtom<`0x${string}` | undefined> & {
|
|
2
|
+
init: `0x${string}` | undefined;
|
|
3
|
+
};
|
|
4
|
+
export declare const useTwapReceiverAddressValue: () => `0x${string}` | undefined;
|
|
5
|
+
//# sourceMappingURL=twapReceiverAddressAtom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapReceiverAddressAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapReceiverAddressAtom.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,uBAAuB;;CAA8B,CAAC;AAEnE,eAAO,MAAM,2BAA2B,iCAEvC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { useAtomValue as e } from "../../store.js";
|
|
2
|
+
import { atom as t } from "jotai";
|
|
3
|
+
//#region src/core/twap/state/twapReceiverAddressAtom.ts
|
|
4
|
+
var n = t(), r = () => e(n);
|
|
5
|
+
//#endregion
|
|
6
|
+
export { n as twapReceiverAddressAtom, r as useTwapReceiverAddressValue };
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=twapReceiverAddressAtom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapReceiverAddressAtom.js","names":["useAtomValue","atom","Address","twapReceiverAddressAtom","useTwapReceiverAddressValue"],"sources":["../../../../src/core/twap/state/twapReceiverAddressAtom.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport { atom } from \"jotai\";\nimport type { Address } from \"viem\";\n\n// no way to change this for the user for now, defaults to connected account in `subscribeToAccountChanges`\nexport const twapReceiverAddressAtom = atom<Address | undefined>();\n\nexport const useTwapReceiverAddressValue = () => {\n return useAtomValue(twapReceiverAddressAtom);\n};\n"],"mappings":";;;AAKA,IAAaG,IAA0BF,GAA2B,EAErDG,UACJJ,EAAaG,EAAwB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapSideAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD,eAAO,MAAM,YAAY,qCAiBvB,CAAC;AAEH,eAAO,MAAM,WAAW,qBAEvB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { useAtomValue as e } from "../../store.js";
|
|
2
|
+
import { twapTokenToAtom as t } from "./twapTokenAtoms.js";
|
|
3
|
+
import { currentTwapInputAtom as n } from "./currentTwapInputAtom.js";
|
|
4
|
+
import { isTwapCrossChainAtom as r } from "./isCrosschainAtom.js";
|
|
5
|
+
import { atom as i } from "jotai";
|
|
6
|
+
//#region src/core/twap/state/twapSideAtom.ts
|
|
7
|
+
var a = i((e) => {
|
|
8
|
+
let i = e(t);
|
|
9
|
+
return e(r) || !i || e(n) === "from" ? "SELL" : "BUY";
|
|
10
|
+
}), o = () => e(a);
|
|
11
|
+
//#endregion
|
|
12
|
+
export { a as twapSideAtom, o as useTwapSide };
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=twapSideAtom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapSideAtom.js","names":["twapTokenToAtom","currentTwapInputAtom","SwapSideUnion","atom","useAtomValue","isTwapCrossChainAtom","twapSideAtom","get","tokenTo","isCrosschain","currentTwapInput","useTwapSide"],"sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"sourcesContent":["import { twapTokenToAtom } from \"./twapTokenAtoms\";\nimport { currentTwapInputAtom } from \"./currentTwapInputAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { isTwapCrossChainAtom } from \"./isCrosschainAtom\";\n\nexport const twapSideAtom = atom<SwapSideUnion>((get) => {\n const tokenTo = get(twapTokenToAtom);\n\n const isCrosschain = get(isTwapCrossChainAtom);\n\n if (isCrosschain) {\n // @TODO revert this change when Crosschain BUY is supported for TWAP\n return \"SELL\";\n }\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentTwapInput = get(currentTwapInputAtom);\n\n return currentTwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useTwapSide = () => {\n return useAtomValue(twapSideAtom);\n};\n"],"mappings":";;;;;;AAOA,IAAaM,IAAeH,GAAqBI,MAAQ;CACvD,IAAMC,IAAUD,EAAIP,EAAgB;AAepC,QAbqBO,EAAIF,EAAqB,IAO1C,CAACG,KAIoBD,EAAIN,EAAqB,KAEtB,SALnB,SAKqC;EAC9C,EAEWU,UACJP,EAAaE,EAAa"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Token } from '../../../tokens/state/types';
|
|
2
|
+
export declare const twapTokenFromAtom: import('jotai').PrimitiveAtom<Token> & {
|
|
3
|
+
init: Token;
|
|
4
|
+
};
|
|
5
|
+
export declare const twapTokenToAtom: import('jotai').PrimitiveAtom<Token | undefined> & {
|
|
6
|
+
init: Token | undefined;
|
|
7
|
+
};
|
|
8
|
+
export declare const useTwapTokenFrom: () => Token;
|
|
9
|
+
export declare const useTwapTokenTo: () => Token | undefined;
|
|
10
|
+
//# sourceMappingURL=twapTokenAtoms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapTokenAtoms.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AASlD,eAAO,MAAM,iBAAiB;;CAAyB,CAAC;AACxD,eAAO,MAAM,eAAe;;CAAgB,CAAC;AAE7C,eAAO,MAAM,gBAAgB,aAAwC,CAAC;AACtE,eAAO,MAAM,cAAc,yBAAsC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { useAtomValue as e } from "../../store.js";
|
|
2
|
+
import { wagmiConfig as t } from "../../../lib/web3/wagmi/config.js";
|
|
3
|
+
import { pickDefaultTokenPair as n } from "../../../tokens/defaultTokens.js";
|
|
4
|
+
import { atom as r } from "jotai";
|
|
5
|
+
//#region src/core/twap/state/twapTokenAtoms.ts
|
|
6
|
+
var [i] = n(t.state.chainId, "twap"), a = r(i), o = r(), s = () => e(a), c = () => e(o);
|
|
7
|
+
//#endregion
|
|
8
|
+
export { a as twapTokenFromAtom, o as twapTokenToAtom, s as useTwapTokenFrom, c as useTwapTokenTo };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=twapTokenAtoms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twapTokenAtoms.js","names":["wagmiConfig","pickDefaultTokenPair","Token","atom","useAtomValue","defaultTokenFrom","state","chainId","twapTokenFromAtom","twapTokenToAtom","useTwapTokenFrom","useTwapTokenTo"],"sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"twap\"\n);\n\nexport const twapTokenFromAtom = atom(defaultTokenFrom);\nexport const twapTokenToAtom = atom<Token>();\n\nexport const useTwapTokenFrom = () => useAtomValue(twapTokenFromAtom);\nexport const useTwapTokenTo = () => useAtomValue(twapTokenToAtom);\n"],"mappings":";;;;;AAMA,IAAM,CAACK,KAAoBJ,EACzBD,EAAYM,MAAMC,SAClB,OACD,EAEYC,IAAoBL,EAAKE,EAAiB,EAC1CI,IAAkBN,GAAa,EAE/BO,UAAyBN,EAAaI,EAAkB,EACxDG,UAAuBP,EAAaK,EAAgB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DetailWithValue } from '../../../components/widget/Details/types';
|
|
2
|
+
import { DeltaOrBridgePrice } from '../../../hooks/swap/prices/types';
|
|
3
|
+
import { Token } from '../../../tokens/state/types';
|
|
4
|
+
export declare function constructMinReceivedForTwapDetail({ price, slippagePercent, numSlices, isLoading, tokenTo, swapSide, }: {
|
|
5
|
+
price?: DeltaOrBridgePrice;
|
|
6
|
+
slippagePercent: number;
|
|
7
|
+
numSlices: number;
|
|
8
|
+
isLoading: boolean;
|
|
9
|
+
tokenTo?: Token;
|
|
10
|
+
swapSide?: "SELL" | "BUY";
|
|
11
|
+
}): DetailWithValue | undefined;
|
|
12
|
+
//# sourceMappingURL=minimumReceiveable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimumReceiveable.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/twapDetails/minimumReceiveable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAIpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAMlD,wBAAgB,iCAAiC,CAAC,EAChD,KAAK,EACL,eAAe,EACf,SAAS,EACT,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE;IACD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;CAC3B,GAAG,eAAe,GAAG,SAAS,CAuC9B"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { getTotalTwapAmount as e } from "../../../lib/utils/twap.js";
|
|
2
|
+
import { toDecimalTrimmed as t } from "../../../lib/utils/toDecimal.js";
|
|
3
|
+
import { getDestAmountAfterFeeAndSlippage as n } from "../../../lib/utils/price.js";
|
|
4
|
+
import { formatUnits as r } from "viem";
|
|
5
|
+
//#region src/core/twap/twapDetails/minimumReceiveable.ts
|
|
6
|
+
var i = "The minimum amount of token to receive after slippage.";
|
|
7
|
+
function a({ price: a, slippagePercent: o, numSlices: s, isLoading: c, tokenTo: l, swapSide: u }) {
|
|
8
|
+
if (u === "BUY") return;
|
|
9
|
+
let d = "Minimum Receivable";
|
|
10
|
+
if (!a || !l) return {
|
|
11
|
+
title: d,
|
|
12
|
+
value: null,
|
|
13
|
+
isLoading: c,
|
|
14
|
+
tooltip: i
|
|
15
|
+
};
|
|
16
|
+
let f = e({
|
|
17
|
+
chunkWei: n({
|
|
18
|
+
price: a,
|
|
19
|
+
slippagePercent: o
|
|
20
|
+
}),
|
|
21
|
+
numSlices: s
|
|
22
|
+
});
|
|
23
|
+
return {
|
|
24
|
+
title: d,
|
|
25
|
+
value: `${t(r(BigInt(f), l.decimals))} ${l.symbol}`,
|
|
26
|
+
isLoading: c,
|
|
27
|
+
tooltip: i
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
export { a as constructMinReceivedForTwapDetail };
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=minimumReceiveable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimumReceiveable.js","names":["DetailWithValue","DeltaOrBridgePrice","getDestAmountAfterFeeAndSlippage","toDecimalTrimmed","getTotalTwapAmount","Token","formatUnits","tooltip","constructMinReceivedForTwapDetail","price","slippagePercent","numSlices","isLoading","tokenTo","swapSide","title","value","minDestAmount","minDestAmountTotal","chunkWei","minDestAmountUnit","BigInt","decimals","formattedMinDestAmountUnit","symbol"],"sources":["../../../../src/core/twap/twapDetails/minimumReceiveable.ts"],"sourcesContent":["import type { DetailWithValue } from \"@/components/widget/Details/types\";\nimport type { DeltaOrBridgePrice } from \"@/hooks/swap/prices/types\";\nimport { getDestAmountAfterFeeAndSlippage } from \"@/lib/utils/price\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { getTotalTwapAmount } from \"@/lib/utils/twap\";\nimport type { Token } from \"@/tokens/state/types\";\n\nimport { formatUnits } from \"viem\";\n\nconst tooltip = \"The minimum amount of token to receive after slippage.\";\n\nexport function constructMinReceivedForTwapDetail({\n price,\n slippagePercent,\n numSlices,\n isLoading,\n tokenTo,\n swapSide,\n}: {\n price?: DeltaOrBridgePrice;\n slippagePercent: number;\n numSlices: number;\n isLoading: boolean;\n tokenTo?: Token;\n swapSide?: \"SELL\" | \"BUY\";\n}): DetailWithValue | undefined {\n // in case of BUY minReceived= exactly destAmount*numSlices\n if (swapSide === \"BUY\") return;\n\n const title = \"Minimum Receivable\";\n\n if (!price || !tokenTo) {\n return {\n title,\n value: null,\n isLoading,\n tooltip,\n };\n }\n\n const minDestAmount = getDestAmountAfterFeeAndSlippage({\n price,\n slippagePercent,\n });\n\n // minDestAmount*numSlices\n const minDestAmountTotal = getTotalTwapAmount({\n chunkWei: minDestAmount,\n numSlices,\n });\n\n const minDestAmountUnit = formatUnits(\n BigInt(minDestAmountTotal),\n tokenTo.decimals\n );\n\n const formattedMinDestAmountUnit = toDecimalTrimmed(minDestAmountUnit);\n\n return {\n title,\n value: `${formattedMinDestAmountUnit} ${tokenTo.symbol}`,\n isLoading,\n tooltip,\n };\n}\n"],"mappings":";;;;;AASA,IAAMO,IAAU;AAEhB,SAAgBC,EAAkC,EAChDC,UACAC,oBACAC,cACAC,cACAC,YACAC,eAQ8B;AAE9B,KAAIA,MAAa,MAAO;CAExB,IAAMC,IAAQ;AAEd,KAAI,CAACN,KAAS,CAACI,EACb,QAAO;EACLE;EACAC,OAAO;EACPJ;EACAL;EACD;CASH,IAAMW,IAAqBd,EAAmB;EAC5Ce,UAPoBjB,EAAiC;GACrDO;GACAC;GACD,CAAC;EAKAC;EACD,CAAC;AASF,QAAO;EACLI;EACAC,OAAO,GAJ0Bb,EALTG,EACxBe,OAAOH,EAAmB,EAC1BL,EAAQS,SACT,CAEqE,CAIhC,GAAIT,EAAQW;EAChDZ;EACAL;EACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTwapDetailsListProps.d.ts","sourceRoot":"","sources":["../../../src/core/twap/useTwapDetailsListProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,kCAAkC,EACnC,MAAM,mCAAmC,CAAC;AAkB3C,eAAO,MAAM,uBAAuB,QAC9B,kCAAkC,GAAG,IAiFxC,CAAC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { useAtomValue as e } from "../store.js";
|
|
2
|
+
import { isTruthy as t } from "../../lib/utils/index.js";
|
|
3
|
+
import { twapPayInputAmountWeiAtom as n, twapReceiveInputAmountWeiAtom as r } from "./state/twapInputAmountAtom.js";
|
|
4
|
+
import { TWAP_DURATION_OPTIONS as i } from "./state/constants.js";
|
|
5
|
+
import { twapDurationAtom as a, twapSlippageAtom as o } from "./state/twapParamsAtom.js";
|
|
6
|
+
import { useWidgetTokens as s } from "../inputs/state/common.js";
|
|
7
|
+
import { DeltaIcon as c } from "../../components/widget/Icon/DeltaIcon.js";
|
|
8
|
+
import { constructPriceImpactDetail as l } from "../swapDetails/priceImpact.js";
|
|
9
|
+
import { SwapRateWithPriceImpactRow as u } from "../../components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js";
|
|
10
|
+
import { useTwapPrices as d } from "../../hooks/swap/prices/useTwapPrices.js";
|
|
11
|
+
import { Duration as f } from "../../components/widget/Duration/Duration.js";
|
|
12
|
+
import { constructMinReceivedForTwapDetail as p } from "./twapDetails/minimumReceiveable.js";
|
|
13
|
+
import { c as m } from "react-compiler-runtime";
|
|
14
|
+
import { jsx as h, jsxs as g } from "react/jsx-runtime";
|
|
15
|
+
//#region src/core/twap/useTwapDetailsListProps.tsx
|
|
16
|
+
var _ = () => {
|
|
17
|
+
let _ = m(25), { tokenFrom: v, tokenTo: y } = s("twap"), { isLoading: b, side: x, price: S, numSlices: C, getPriceImpact: w } = d(), T = e(n), E = e(r), D = e(a), O = e(o);
|
|
18
|
+
if (!y || E === void 0 || !T || T === "0") return null;
|
|
19
|
+
let k = x === "BUY", A, j;
|
|
20
|
+
if (_[0] !== D || _[1] !== w || _[2] !== b || _[3] !== C || _[4] !== S || _[5] !== x || _[6] !== O || _[7] !== y) {
|
|
21
|
+
let e = i.find((e) => e.value === D)?.label ?? /* @__PURE__ */ h(f, { timeMs: D * 60 * 1e3 });
|
|
22
|
+
A = l({
|
|
23
|
+
priceImpactResult: w(),
|
|
24
|
+
isLoading: b
|
|
25
|
+
});
|
|
26
|
+
let n = p({
|
|
27
|
+
price: S,
|
|
28
|
+
isLoading: b,
|
|
29
|
+
numSlices: C,
|
|
30
|
+
tokenTo: y,
|
|
31
|
+
slippagePercent: O,
|
|
32
|
+
swapSide: x
|
|
33
|
+
}), r;
|
|
34
|
+
_[10] === Symbol.for("react.memo_cache_sentinel") ? (r = /* @__PURE__ */ g("div", {
|
|
35
|
+
className: "flex items-center gap-1",
|
|
36
|
+
children: [/* @__PURE__ */ h(c, {}), " Delta"]
|
|
37
|
+
}), _[10] = r) : r = _[10], j = [
|
|
38
|
+
{
|
|
39
|
+
title: "Order Routing",
|
|
40
|
+
value: r
|
|
41
|
+
},
|
|
42
|
+
A,
|
|
43
|
+
{
|
|
44
|
+
title: "Slippage Tolerance",
|
|
45
|
+
value: `${O}%`
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
title: "Order Duration",
|
|
49
|
+
value: e
|
|
50
|
+
},
|
|
51
|
+
n
|
|
52
|
+
].filter(t), _[0] = D, _[1] = w, _[2] = b, _[3] = C, _[4] = S, _[5] = x, _[6] = O, _[7] = y, _[8] = A, _[9] = j;
|
|
53
|
+
} else A = _[8], j = _[9];
|
|
54
|
+
let M = j, N;
|
|
55
|
+
_[11] !== E || _[12] !== k || _[13] !== b || _[14] !== T || _[15] !== v || _[16] !== y ? (N = {
|
|
56
|
+
srcToken: v,
|
|
57
|
+
destToken: y,
|
|
58
|
+
srcAmountWei: T,
|
|
59
|
+
destAmountWei: E,
|
|
60
|
+
isLoading: b,
|
|
61
|
+
reverse: k,
|
|
62
|
+
prefix: "Market Rate:"
|
|
63
|
+
}, _[11] = E, _[12] = k, _[13] = b, _[14] = T, _[15] = v, _[16] = y, _[17] = N) : N = _[17];
|
|
64
|
+
let P;
|
|
65
|
+
_[18] !== A || _[19] !== N ? (P = /* @__PURE__ */ h(u, {
|
|
66
|
+
swapRateProps: N,
|
|
67
|
+
priceImpactDetail: A
|
|
68
|
+
}), _[18] = A, _[19] = N, _[20] = P) : P = _[20];
|
|
69
|
+
let F;
|
|
70
|
+
_[21] === Symbol.for("react.memo_cache_sentinel") ? (F = { root: "mt-4" }, _[21] = F) : F = _[21];
|
|
71
|
+
let I;
|
|
72
|
+
return _[22] !== M || _[23] !== P ? (I = {
|
|
73
|
+
details: M,
|
|
74
|
+
trigger: P,
|
|
75
|
+
classes: F
|
|
76
|
+
}, _[22] = M, _[23] = P, _[24] = I) : I = _[24], I;
|
|
77
|
+
};
|
|
78
|
+
//#endregion
|
|
79
|
+
export { _ as useTwapDetailsListProps };
|
|
80
|
+
|
|
81
|
+
//# sourceMappingURL=useTwapDetailsListProps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTwapDetailsListProps.js","names":["DetailWithValue","DetailWithValueListExpandableProps","useWidgetTokens","useAtomValue","twapPayInputAmountWeiAtom","twapReceiveInputAmountWeiAtom","twapDurationAtom","twapSlippageAtom","TWAP_DURATION_OPTIONS","DeltaIcon","useTwapPrices","constructMinReceivedForTwapDetail","isTruthy","constructPriceImpactDetail","SwapRateWithPriceImpactRow","Duration","useTwapDetailsListProps","$","_c","tokenFrom","tokenTo","isLoading","side","price","numSlices","getPriceImpact","srcAmountWei","destAmountWei","duration","slippage","undefined","isBuy","priceImpactDetail","t0","durationLabel","find","o","value","label","priceImpactResult","minReceivableDetail","slippagePercent","swapSide","t1","Symbol","for","title","filter","details","srcToken","destToken","reverse","prefix","t2","t3","root","t4","trigger","classes"],"sources":["../../../src/core/twap/useTwapDetailsListProps.tsx"],"sourcesContent":["import type {\n DetailWithValue,\n DetailWithValueListExpandableProps,\n} from \"@/components/widget/Details/types\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useAtomValue } from \"@/core/store\";\nimport {\n twapPayInputAmountWeiAtom,\n twapReceiveInputAmountWeiAtom,\n} from \"./state/twapInputAmountAtom\";\nimport { twapDurationAtom } from \"./state/twapParamsAtom\";\nimport { twapSlippageAtom } from \"./state/twapParamsAtom\";\nimport { TWAP_DURATION_OPTIONS } from \"./state/constants\";\nimport { DeltaIcon } from \"@/components/widget/Icon/DeltaIcon\";\nimport { useTwapPrices } from \"@/hooks/swap/prices/useTwapPrices\";\nimport { constructMinReceivedForTwapDetail } from \"./twapDetails/minimumReceiveable\";\nimport { isTruthy } from \"@/lib/utils\";\nimport { constructPriceImpactDetail } from \"../swapDetails/priceImpact\";\nimport { SwapRateWithPriceImpactRow } from \"@/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow\";\nimport { Duration } from \"@/components/widget/Duration/Duration\";\n\nexport const useTwapDetailsListProps =\n (): DetailWithValueListExpandableProps | null => {\n const { tokenFrom, tokenTo } = useWidgetTokens(\"twap\");\n const { isLoading, side, price, numSlices, getPriceImpact } =\n useTwapPrices();\n\n const srcAmountWei = useAtomValue(twapPayInputAmountWeiAtom);\n const destAmountWei = useAtomValue(twapReceiveInputAmountWeiAtom);\n\n const duration = useAtomValue(twapDurationAtom);\n const slippage = useAtomValue(twapSlippageAtom);\n\n if (\n !tokenTo ||\n destAmountWei === undefined ||\n !srcAmountWei ||\n srcAmountWei === \"0\"\n ) {\n return null;\n }\n\n const isBuy = side === \"BUY\";\n\n const durationLabel = TWAP_DURATION_OPTIONS.find(\n (o) => o.value === duration\n )?.label ?? <Duration timeMs={duration * 60 * 1000} />;\n\n const priceImpactDetail = constructPriceImpactDetail({\n priceImpactResult: getPriceImpact(),\n isLoading,\n });\n\n const minReceivableDetail = constructMinReceivedForTwapDetail({\n price,\n isLoading,\n numSlices,\n tokenTo,\n slippagePercent: slippage,\n swapSide: side,\n });\n\n const details: DetailWithValue[] = [\n {\n title: \"Order Routing\",\n value: (\n <div className=\"flex items-center gap-1\">\n <DeltaIcon /> Delta\n </div>\n ),\n },\n priceImpactDetail,\n {\n title: \"Slippage Tolerance\",\n value: `${slippage}%`,\n },\n {\n title: \"Order Duration\",\n value: durationLabel,\n },\n minReceivableDetail,\n ].filter(isTruthy);\n\n return {\n details,\n trigger: (\n <SwapRateWithPriceImpactRow\n swapRateProps={{\n srcToken: tokenFrom,\n destToken: tokenTo,\n srcAmountWei,\n destAmountWei,\n isLoading,\n reverse: isBuy,\n prefix: \"Market Rate:\",\n }}\n priceImpactDetail={priceImpactDetail}\n />\n ),\n classes: {\n root: \"mt-4\",\n },\n };\n };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TokenInputProps } from '../../components/widget/TokenInput/types';
|
|
2
|
+
export type UseTwapTokenFromInputInput = {
|
|
3
|
+
override?: {
|
|
4
|
+
amountWei?: string;
|
|
5
|
+
};
|
|
6
|
+
isPriceLoading?: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare const useTwapTokenFromInputProps: (input?: UseTwapTokenFromInputInput) => TokenInputProps;
|
|
9
|
+
//# sourceMappingURL=useTwapTokenFromInputProps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTwapTokenFromInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/twap/useTwapTokenFromInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAmC5E,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAkKF,eAAO,MAAM,0BAA0B,GACrC,QAAO,0BAA+B,KACrC,eAsBF,CAAC"}
|