@velora-dex/widget 0.4.14-dev.4 → 0.4.14
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 +0 -1
- 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 +1 -2
- 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 +1 -2
- 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 +26 -44
- 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 +4 -1
- package/dist/components/widget/Duration/Duration.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +1 -2
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +7 -9
- 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 +9 -25
- package/dist/components/widget/LimitOrderItem/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 +4 -8
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/SwapRate/SwapRate.d.ts +1 -2
- package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
- package/dist/components/widget/SwapRate/SwapRate.js +20 -29
- 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 +86 -77
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +46 -28
- 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 +1 -2
- 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 +72 -105
- 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 +11 -46
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +2 -7
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +7 -19
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
- package/dist/components/widget/TradeOverview/steps.d.ts +0 -37
- package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/steps.js +1 -10
- 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/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 +0 -5
- package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
- package/dist/core/TradeFlowScreenButton.js +1 -58
- package/dist/core/TradeFlowScreenButton.js.map +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 +0 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js +1 -71
- 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 +3 -199
- 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/state/common.d.ts +0 -4
- package/dist/core/inputs/state/common.d.ts.map +1 -1
- package/dist/core/inputs/state/common.js +4 -49
- 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 +27 -27
- 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 +2 -0
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/state/chainToAtom.d.ts +0 -2
- package/dist/core/state/chainToAtom.d.ts.map +1 -1
- package/dist/core/state/chainToAtom.js +7 -28
- 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 +33 -55
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/events/effects/formInput.d.ts +0 -3
- package/dist/events/effects/formInput.d.ts.map +1 -1
- package/dist/events/effects/formInput.js +1 -17
- package/dist/events/effects/formInput.js.map +1 -1
- package/dist/events/getters/widgetState.d.ts.map +1 -1
- package/dist/events/getters/widgetState.js +1 -3
- 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 +1 -2
- package/dist/events/hooks/useActivateEffects.js.map +1 -1
- package/dist/events/types/common.d.ts +0 -6
- package/dist/events/types/common.d.ts.map +1 -1
- package/dist/events/types/formInput.d.ts +2 -11
- package/dist/events/types/formInput.d.ts.map +1 -1
- package/dist/events/types/index.d.ts +1 -4
- 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 +2 -3
- package/dist/events/types/swap.d.ts.map +1 -1
- 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 +0 -1
- package/dist/hooks/swap/prices/constants.d.ts.map +1 -1
- package/dist/hooks/swap/prices/constants.js +1 -2
- package/dist/hooks/swap/prices/constants.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts +1 -10
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +5 -2
- 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 +3 -2
- 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 +15 -3
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +5 -4
- 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 +6 -17
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.js +2 -34
- package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts +46 -11
- 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 +5 -6
- 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 +1 -67
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +6 -24
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts +10 -17
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +4 -32
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +6 -5
- 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 +35 -37
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +17 -14
- 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 +0 -1
- package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/utils.js +1 -8
- 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 +35 -37
- 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 +5 -9
- 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 +2 -0
- 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/tradeFlow/common/types.d.ts +2 -4
- package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +0 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +55 -57
- 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 +152 -263
- 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 +181 -296
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +1 -2
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +83 -85
- 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 +9 -8
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +3 -4
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +6 -5
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +9 -5
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.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 +4 -4
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/hooks/useSlippage.d.ts.map +1 -1
- package/dist/hooks/useSlippage.js +1 -2
- 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 +0 -1
- package/dist/lib/constants/time.d.ts.map +1 -1
- package/dist/lib/constants/time.js +1 -2
- 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 -9
- package/dist/lib/tradeMode.d.ts.map +1 -1
- package/dist/lib/tradeMode.js +2 -4
- package/dist/lib/tradeMode.js.map +1 -1
- package/dist/lib/utils/index.d.ts +0 -8
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +1 -18
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/price.d.ts +0 -1
- package/dist/lib/utils/price.d.ts.map +1 -1
- package/dist/lib/utils/price.js +2 -4
- package/dist/lib/utils/price.js.map +1 -1
- package/dist/lib/utils/time.d.ts +0 -2
- package/dist/lib/utils/time.d.ts.map +1 -1
- package/dist/lib/utils/time.js +1 -7
- 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/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 +4 -65
- 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 +18 -21
- 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
- package/dist/components/widget/NumberInput/NumberInput.d.ts +0 -18
- package/dist/components/widget/NumberInput/NumberInput.d.ts.map +0 -1
- package/dist/components/widget/NumberInput/NumberInput.js +0 -255
- package/dist/components/widget/NumberInput/NumberInput.js.map +0 -1
- package/dist/components/widget/NumberInput/assets/arrow-down.svg.js +0 -12
- package/dist/components/widget/NumberInput/assets/arrow-down.svg.js.map +0 -1
- package/dist/components/widget/NumberInput/assets/arrow-up.svg.js +0 -12
- package/dist/components/widget/NumberInput/assets/arrow-up.svg.js.map +0 -1
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +0 -15
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +0 -1
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js +0 -241
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +0 -1
- package/dist/components/widget/TradeOverview/utils/swapAmounts.d.ts +0 -14
- package/dist/components/widget/TradeOverview/utils/swapAmounts.d.ts.map +0 -1
- package/dist/components/widget/TradeOverview/utils/swapAmounts.js +0 -43
- package/dist/components/widget/TradeOverview/utils/swapAmounts.js.map +0 -1
- package/dist/components/widget/Twap/OrderDuration.d.ts +0 -2
- package/dist/components/widget/Twap/OrderDuration.d.ts.map +0 -1
- package/dist/components/widget/Twap/OrderDuration.js +0 -75
- package/dist/components/widget/Twap/OrderDuration.js.map +0 -1
- package/dist/components/widget/Twap/OrderSplit.d.ts +0 -2
- package/dist/components/widget/Twap/OrderSplit.d.ts.map +0 -1
- package/dist/components/widget/Twap/OrderSplit.js +0 -57
- package/dist/components/widget/Twap/OrderSplit.js.map +0 -1
- package/dist/components/widget/Twap/RateProtection.d.ts +0 -2
- package/dist/components/widget/Twap/RateProtection.d.ts.map +0 -1
- package/dist/components/widget/Twap/RateProtection.js +0 -57
- package/dist/components/widget/Twap/RateProtection.js.map +0 -1
- package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts +0 -3
- package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts.map +0 -1
- package/dist/components/widget/Twap/TwapDetailWithTooltip.js +0 -33
- package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +0 -1
- package/dist/core/TwapDetails.d.ts +0 -2
- package/dist/core/TwapDetails.d.ts.map +0 -1
- package/dist/core/TwapDetails.js +0 -24
- package/dist/core/TwapDetails.js.map +0 -1
- package/dist/core/twap/state/constants.d.ts +0 -15
- package/dist/core/twap/state/constants.d.ts.map +0 -1
- package/dist/core/twap/state/constants.js +0 -19
- package/dist/core/twap/state/constants.js.map +0 -1
- package/dist/core/twap/state/currentTwapInputAtom.d.ts +0 -4
- package/dist/core/twap/state/currentTwapInputAtom.d.ts.map +0 -1
- package/dist/core/twap/state/currentTwapInputAtom.js +0 -6
- package/dist/core/twap/state/currentTwapInputAtom.js.map +0 -1
- package/dist/core/twap/state/isCrosschainAtom.d.ts +0 -3
- package/dist/core/twap/state/isCrosschainAtom.d.ts.map +0 -1
- package/dist/core/twap/state/isCrosschainAtom.js +0 -16
- package/dist/core/twap/state/isCrosschainAtom.js.map +0 -1
- package/dist/core/twap/state/selectedTokenActionsAtom.d.ts +0 -13
- package/dist/core/twap/state/selectedTokenActionsAtom.d.ts.map +0 -1
- package/dist/core/twap/state/selectedTokenActionsAtom.js +0 -194
- package/dist/core/twap/state/selectedTokenActionsAtom.js.map +0 -1
- package/dist/core/twap/state/twapInputAmountAtom.d.ts +0 -9
- package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +0 -1
- package/dist/core/twap/state/twapInputAmountAtom.js +0 -21
- package/dist/core/twap/state/twapInputAmountAtom.js.map +0 -1
- package/dist/core/twap/state/twapParamsAtom.d.ts +0 -16
- package/dist/core/twap/state/twapParamsAtom.d.ts.map +0 -1
- package/dist/core/twap/state/twapParamsAtom.js +0 -22
- package/dist/core/twap/state/twapParamsAtom.js.map +0 -1
- package/dist/core/twap/state/twapReceiverAddressAtom.d.ts +0 -5
- package/dist/core/twap/state/twapReceiverAddressAtom.d.ts.map +0 -1
- package/dist/core/twap/state/twapReceiverAddressAtom.js +0 -10
- package/dist/core/twap/state/twapReceiverAddressAtom.js.map +0 -1
- package/dist/core/twap/state/twapSideAtom.d.ts +0 -4
- package/dist/core/twap/state/twapSideAtom.d.ts.map +0 -1
- package/dist/core/twap/state/twapSideAtom.js +0 -24
- package/dist/core/twap/state/twapSideAtom.js.map +0 -1
- package/dist/core/twap/state/twapTokenAtoms.d.ts +0 -10
- package/dist/core/twap/state/twapTokenAtoms.d.ts.map +0 -1
- package/dist/core/twap/state/twapTokenAtoms.js +0 -29
- package/dist/core/twap/state/twapTokenAtoms.js.map +0 -1
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +0 -12
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +0 -1
- package/dist/core/twap/twapDetails/minimumReceiveable.js +0 -44
- package/dist/core/twap/twapDetails/minimumReceiveable.js.map +0 -1
- package/dist/core/twap/useTwapDetailsListProps.d.ts +0 -3
- package/dist/core/twap/useTwapDetailsListProps.d.ts.map +0 -1
- package/dist/core/twap/useTwapDetailsListProps.js +0 -109
- package/dist/core/twap/useTwapDetailsListProps.js.map +0 -1
- package/dist/core/twap/useTwapTokenFromInputProps.d.ts +0 -9
- package/dist/core/twap/useTwapTokenFromInputProps.d.ts.map +0 -1
- package/dist/core/twap/useTwapTokenFromInputProps.js +0 -455
- package/dist/core/twap/useTwapTokenFromInputProps.js.map +0 -1
- package/dist/core/twap/useTwapTokenSwitcherProps.d.ts +0 -3
- package/dist/core/twap/useTwapTokenSwitcherProps.d.ts.map +0 -1
- package/dist/core/twap/useTwapTokenSwitcherProps.js +0 -38
- package/dist/core/twap/useTwapTokenSwitcherProps.js.map +0 -1
- package/dist/core/twap/useTwapTokenToInputProps.d.ts +0 -9
- package/dist/core/twap/useTwapTokenToInputProps.d.ts.map +0 -1
- package/dist/core/twap/useTwapTokenToInputProps.js +0 -274
- package/dist/core/twap/useTwapTokenToInputProps.js.map +0 -1
- package/dist/events/getters/twap.d.ts +0 -6
- package/dist/events/getters/twap.d.ts.map +0 -1
- package/dist/events/getters/twap.js +0 -65
- package/dist/events/getters/twap.js.map +0 -1
- package/dist/events/types/twap.d.ts +0 -26
- package/dist/events/types/twap.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts +0 -19
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js +0 -86
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +0 -37
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +0 -164
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts +0 -69
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js +0 -278
- package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +0 -15
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +0 -89
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts +0 -60
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js +0 -325
- package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts +0 -18
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +0 -87
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +0 -1
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +0 -16
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +0 -1
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js +0 -73
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +0 -1
- package/dist/hooks/swap/prices/useTwapPrices.d.ts +0 -28
- package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +0 -1
- package/dist/hooks/swap/prices/useTwapPrices.js +0 -175
- package/dist/hooks/swap/prices/useTwapPrices.js.map +0 -1
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +0 -48
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +0 -1
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +0 -71
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +0 -1
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts +0 -50
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +0 -1
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js +0 -94
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +0 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +0 -88
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +0 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js +0 -591
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +0 -1
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts +0 -25
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts.map +0 -1
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js +0 -237
- package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +0 -1
- package/dist/lib/utils/twap.d.ts +0 -17
- package/dist/lib/utils/twap.d.ts.map +0 -1
- package/dist/lib/utils/twap.js +0 -34
- package/dist/lib/utils/twap.js.map +0 -1
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
|
|
2
|
-
import { areTokensSame } from '../../../tokens/utils/areTokensSame.js';
|
|
3
|
-
import { atom } from 'jotai';
|
|
4
|
-
import { twapTokenFromAtom, twapTokenToAtom } from './twapTokenAtoms.js';
|
|
5
|
-
import { wagmiConfig } from '../../../lib/web3/wagmi/config.js';
|
|
6
|
-
import { switchChain } from '../../../lib/web3/wagmi/switchChain.js';
|
|
7
|
-
import { isCrosschainPossible } from '../../across/isCrosschainPossible.js';
|
|
8
|
-
import { isTokenFromAcross, findFirstTokenFromAcross } from '../../across/utils.js';
|
|
9
|
-
import { allTokensByChainAtom } from '../../../tokens/state/allTokensByChainAtom.js';
|
|
10
|
-
import { getSelectableDestChains } from '../../state/getSelectableDestChains.js';
|
|
11
|
-
import { enabledSrcChainsAtom } from '../../state/enabledChainsAtom.js';
|
|
12
|
-
import { jotaiStore } from '../../store.js';
|
|
13
|
-
|
|
14
|
-
const switchTwapTokensAtom = atom(null, async (get, set) => {
|
|
15
|
-
const tokenTo = get(twapTokenToAtom);
|
|
16
|
-
if (!tokenTo) return;
|
|
17
|
-
const enabledSrcChains = get(enabledSrcChainsAtom);
|
|
18
|
-
if (!enabledSrcChains.includes(tokenTo.network)) return;
|
|
19
|
-
const tokenFrom = get(twapTokenFromAtom);
|
|
20
|
-
const initChainFrom = tokenFrom.network;
|
|
21
|
-
set(twapTokenFromAtom, tokenTo);
|
|
22
|
-
set(selectTwapTokenToAtom, tokenFrom);
|
|
23
|
-
const currentTokenFrom = get(twapTokenFromAtom);
|
|
24
|
-
if (currentTokenFrom.network !== initChainFrom) {
|
|
25
|
-
switchChain({
|
|
26
|
-
chainId: currentTokenFrom.network
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
const selectTwapTokenFromAtom = atom(null, async (get, set, newTokenFrom) => {
|
|
31
|
-
let tokenFrom = get(twapTokenFromAtom);
|
|
32
|
-
let tokenTo = get(twapTokenToAtom);
|
|
33
|
-
const initTokenFrom = tokenFrom;
|
|
34
|
-
set(twapTokenFromAtom, newTokenFrom);
|
|
35
|
-
tokenFrom = newTokenFrom;
|
|
36
|
-
if (tokenFrom.network !== wagmiConfig.state.chainId) {
|
|
37
|
-
switchChain({
|
|
38
|
-
chainId: tokenFrom.network
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
if (!tokenTo) return;
|
|
42
|
-
const crosschainPossible = isCrosschainPossible({
|
|
43
|
-
get,
|
|
44
|
-
chainIdFrom: tokenFrom.network,
|
|
45
|
-
chainIdTo: tokenTo.network,
|
|
46
|
-
mode: "limit"
|
|
47
|
-
});
|
|
48
|
-
if (crosschainPossible) {
|
|
49
|
-
const isTokenToFromAcross = isTokenFromAcross({
|
|
50
|
-
token: tokenTo,
|
|
51
|
-
fromChainId: tokenFrom.network,
|
|
52
|
-
toChainId: tokenTo.network,
|
|
53
|
-
mode: "limit"
|
|
54
|
-
});
|
|
55
|
-
if (!isTokenToFromAcross) {
|
|
56
|
-
const maybeAcrossToken = findFirstTokenFromAcross({
|
|
57
|
-
fromChainId: tokenFrom.network,
|
|
58
|
-
toChainId: tokenTo.network,
|
|
59
|
-
listByChainId: get(allTokensByChainAtom).listByChainId,
|
|
60
|
-
mode: "limit"
|
|
61
|
-
});
|
|
62
|
-
set(twapTokenToAtom, maybeAcrossToken);
|
|
63
|
-
}
|
|
64
|
-
} else {
|
|
65
|
-
if (tokenFrom.network !== tokenTo.network) {
|
|
66
|
-
const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(tokenFrom.network, "twap");
|
|
67
|
-
tokenTo = areTokensSame(tokenFrom, defaultTokenTo) ? defaultTokenFrom : defaultTokenTo;
|
|
68
|
-
set(twapTokenToAtom, tokenTo);
|
|
69
|
-
} else {
|
|
70
|
-
if (areTokensSame(tokenFrom, tokenTo)) {
|
|
71
|
-
tokenTo = initTokenFrom;
|
|
72
|
-
set(twapTokenToAtom, tokenTo);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
const selectTwapTokenToAtom = atom(null, async (get, set, newTokenTo) => {
|
|
78
|
-
let tokenFrom = get(twapTokenFromAtom);
|
|
79
|
-
const selectableDestChains = getSelectableDestChains(get, {
|
|
80
|
-
fromChainId: tokenFrom.network,
|
|
81
|
-
mode: "limit"
|
|
82
|
-
});
|
|
83
|
-
if (!selectableDestChains.includes(newTokenTo.network)) return;
|
|
84
|
-
let tokenTo = get(twapTokenToAtom);
|
|
85
|
-
const initTokenTo = tokenTo;
|
|
86
|
-
set(twapTokenToAtom, newTokenTo);
|
|
87
|
-
tokenTo = newTokenTo;
|
|
88
|
-
if (areTokensSame(tokenTo, tokenFrom)) {
|
|
89
|
-
const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(tokenTo.network, "twap");
|
|
90
|
-
const defaultToken = areTokensSame(tokenFrom, defaultTokenFrom) ? defaultTokenTo : defaultTokenFrom;
|
|
91
|
-
const wasCrosschain = initTokenTo && tokenFrom.network !== initTokenTo.network;
|
|
92
|
-
const newTokenFrom = wasCrosschain ? defaultToken : initTokenTo ?? defaultToken;
|
|
93
|
-
set(twapTokenFromAtom, newTokenFrom);
|
|
94
|
-
tokenFrom = newTokenFrom;
|
|
95
|
-
}
|
|
96
|
-
let needResetTokenFrom = false;
|
|
97
|
-
const crosschainPossible = isCrosschainPossible({
|
|
98
|
-
get,
|
|
99
|
-
chainIdFrom: tokenFrom.network,
|
|
100
|
-
chainIdTo: tokenTo.network,
|
|
101
|
-
mode: "limit"
|
|
102
|
-
});
|
|
103
|
-
if (crosschainPossible) {
|
|
104
|
-
const isTokenToFromAcross = isTokenFromAcross({
|
|
105
|
-
token: tokenTo,
|
|
106
|
-
fromChainId: tokenFrom.network,
|
|
107
|
-
toChainId: tokenTo.network,
|
|
108
|
-
mode: "limit"
|
|
109
|
-
});
|
|
110
|
-
if (!isTokenToFromAcross) {
|
|
111
|
-
needResetTokenFrom = true;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {
|
|
115
|
-
needResetTokenFrom = true;
|
|
116
|
-
}
|
|
117
|
-
const enabledSrcChains = get(enabledSrcChainsAtom);
|
|
118
|
-
if (needResetTokenFrom) {
|
|
119
|
-
let firstPossibleSrcChain = tokenTo.network;
|
|
120
|
-
if (!enabledSrcChains.includes(tokenTo.network)) {
|
|
121
|
-
for (const srcChain of enabledSrcChains) {
|
|
122
|
-
const crosschainPossible2 = isCrosschainPossible({
|
|
123
|
-
get,
|
|
124
|
-
chainIdFrom: srcChain,
|
|
125
|
-
chainIdTo: tokenTo.network,
|
|
126
|
-
mode: "limit"
|
|
127
|
-
});
|
|
128
|
-
if (crosschainPossible2) {
|
|
129
|
-
firstPossibleSrcChain = srcChain;
|
|
130
|
-
break;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(firstPossibleSrcChain, "twap");
|
|
135
|
-
const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom) ? defaultTokenTo : defaultTokenFrom;
|
|
136
|
-
set(twapTokenFromAtom, newTokenFrom);
|
|
137
|
-
tokenFrom = newTokenFrom;
|
|
138
|
-
}
|
|
139
|
-
if (tokenFrom.network !== wagmiConfig.state.chainId) {
|
|
140
|
-
switchChain({
|
|
141
|
-
chainId: tokenFrom.network
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
});
|
|
145
|
-
const syncTwapTokensAfterChainSwitch = (chainId) => {
|
|
146
|
-
const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);
|
|
147
|
-
if (!enabledSrcChains.includes(chainId)) return;
|
|
148
|
-
let tokenFrom = jotaiStore.get(twapTokenFromAtom);
|
|
149
|
-
if (tokenFrom.network === chainId) return;
|
|
150
|
-
const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(chainId, "twap");
|
|
151
|
-
jotaiStore.set(twapTokenFromAtom, defaultTokenFrom);
|
|
152
|
-
tokenFrom = defaultTokenFrom;
|
|
153
|
-
let tokenTo = jotaiStore.get(twapTokenToAtom);
|
|
154
|
-
if (!tokenTo) return;
|
|
155
|
-
const crosschainPossible = isCrosschainPossible({
|
|
156
|
-
get: jotaiStore.get,
|
|
157
|
-
chainIdFrom: chainId,
|
|
158
|
-
chainIdTo: tokenTo.network,
|
|
159
|
-
mode: "limit"
|
|
160
|
-
});
|
|
161
|
-
if (crosschainPossible) {
|
|
162
|
-
const isTokenToFromAcross = isTokenFromAcross({
|
|
163
|
-
token: tokenTo,
|
|
164
|
-
fromChainId: chainId,
|
|
165
|
-
toChainId: tokenTo.network,
|
|
166
|
-
mode: "limit"
|
|
167
|
-
});
|
|
168
|
-
if (!isTokenToFromAcross) {
|
|
169
|
-
const maybeAcrossToken = findFirstTokenFromAcross({
|
|
170
|
-
fromChainId: chainId,
|
|
171
|
-
toChainId: tokenTo.network,
|
|
172
|
-
listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,
|
|
173
|
-
mode: "limit"
|
|
174
|
-
});
|
|
175
|
-
tokenTo = maybeAcrossToken;
|
|
176
|
-
jotaiStore.set(twapTokenToAtom, tokenTo);
|
|
177
|
-
}
|
|
178
|
-
} else {
|
|
179
|
-
const selectableDestChains = getSelectableDestChains(jotaiStore.get, {
|
|
180
|
-
fromChainId: tokenFrom.network,
|
|
181
|
-
mode: "limit"
|
|
182
|
-
});
|
|
183
|
-
if (selectableDestChains.includes(chainId)) {
|
|
184
|
-
tokenTo = defaultTokenTo;
|
|
185
|
-
jotaiStore.set(twapTokenToAtom, tokenTo);
|
|
186
|
-
} else {
|
|
187
|
-
tokenTo = void 0;
|
|
188
|
-
jotaiStore.set(twapTokenToAtom, tokenTo);
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
};
|
|
192
|
-
|
|
193
|
-
export { selectTwapTokenFromAtom, selectTwapTokenToAtom, switchTwapTokensAtom, syncTwapTokensAfterChainSwitch };
|
|
194
|
-
//# sourceMappingURL=selectedTokenActionsAtom.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"selectedTokenActionsAtom.js","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: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n mode: \"limit\",\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: \"limit\",\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: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"limit\",\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: \"limit\",\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: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,\n mode: \"limit\",\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: \"limit\",\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"],"names":["switchTwapTokensAtom","atom","get","set","tokenTo","twapTokenToAtom","enabledSrcChains","enabledSrcChainsAtom","includes","network","tokenFrom","twapTokenFromAtom","initChainFrom","selectTwapTokenToAtom","currentTokenFrom","switchChain","chainId","selectTwapTokenFromAtom","newTokenFrom","initTokenFrom","wagmiConfig","state","crosschainPossible","isCrosschainPossible","chainIdFrom","chainIdTo","mode","isTokenToFromAcross","isTokenFromAcross","token","fromChainId","toChainId","maybeAcrossToken","findFirstTokenFromAcross","listByChainId","allTokensByChainAtom","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","areTokensSame","newTokenTo","selectableDestChains","getSelectableDestChains","initTokenTo","defaultToken","wasCrosschain","needResetTokenFrom","firstPossibleSrcChain","srcChain","syncTwapTokensAfterChainSwitch","jotaiStore","undefined"],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { atom } from 'jotai';
|
|
2
|
-
import { parseUnits } from 'viem';
|
|
3
|
-
import { twapTokenFromAtom, twapTokenToAtom } from './twapTokenAtoms.js';
|
|
4
|
-
|
|
5
|
-
const twapPayInputAmountAtom = atom("0");
|
|
6
|
-
const twapReceiveInputAmountAtom = atom("0");
|
|
7
|
-
const twapPayInputAmountWeiAtom = atom((get) => {
|
|
8
|
-
const tokenFrom = get(twapTokenFromAtom);
|
|
9
|
-
const payInputAmount = get(twapPayInputAmountAtom);
|
|
10
|
-
return parseUnits(payInputAmount, tokenFrom.decimals).toString();
|
|
11
|
-
});
|
|
12
|
-
const twapReceiveInputAmountWeiAtom = atom((get) => {
|
|
13
|
-
const tokenTo = get(twapTokenToAtom);
|
|
14
|
-
if (tokenTo) {
|
|
15
|
-
const receiveInputAmount = get(twapReceiveInputAmountAtom);
|
|
16
|
-
return parseUnits(receiveInputAmount, tokenTo.decimals).toString();
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
export { twapPayInputAmountAtom, twapPayInputAmountWeiAtom, twapReceiveInputAmountAtom, twapReceiveInputAmountWeiAtom };
|
|
21
|
-
//# sourceMappingURL=twapInputAmountAtom.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"twapInputAmountAtom.js","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"],"names":["twapPayInputAmountAtom","atom","twapReceiveInputAmountAtom","twapPayInputAmountWeiAtom","get","tokenFrom","twapTokenFromAtom","payInputAmount","parseUnits","decimals","toString","twapReceiveInputAmountWeiAtom","tokenTo","twapTokenToAtom","receiveInputAmount"],"mappings":";;;;AAIO,MAAMA,sBAAAA,GAAyBC,KAAK,GAAG;AAEvC,MAAMC,0BAAAA,GAA6BD,KAAK,GAAG;AAE3C,MAAME,yBAAAA,GAA4BF,KAAMG,CAAAA,GAAAA,KAAQ;AACrD,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,iBAAiB,CAAA;AACvC,EAAA,MAAMC,cAAAA,GAAiBH,IAAIJ,sBAAsB,CAAA;AACjD,EAAA,OAAOQ,UAAAA,CAAWD,cAAAA,EAAgBF,SAAAA,CAAUI,QAAQ,EAAEC,QAAAA,EAAS;AACjE,CAAC;AAEM,MAAMC,6BAAAA,GAAgCV,KAAMG,CAAAA,GAAAA,KAAQ;AACzD,EAAA,MAAMQ,OAAAA,GAAUR,IAAIS,eAAe,CAAA;AACnC,EAAA,IAAID,OAAAA,EAAS;AACX,IAAA,MAAME,kBAAAA,GAAqBV,IAAIF,0BAA0B,CAAA;AACzD,IAAA,OAAOM,UAAAA,CAAWM,kBAAAA,EAAoBF,OAAAA,CAAQH,QAAQ,EAAEC,QAAAA,EAAS;AAAA,EACnE;AACF,CAAC;;;;"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { TwapDuration } from './constants';
|
|
2
|
-
export declare const twapDurationAtom: import('jotai').PrimitiveAtom<TwapDuration> & {
|
|
3
|
-
init: TwapDuration;
|
|
4
|
-
};
|
|
5
|
-
export declare const useTwapDuration: () => TwapDuration;
|
|
6
|
-
export declare const userTwapSplitAtom: import('jotai').PrimitiveAtom<number> & {
|
|
7
|
-
init: number;
|
|
8
|
-
};
|
|
9
|
-
export declare const twapSplitAtom: import('jotai').Atom<number>;
|
|
10
|
-
export declare const useTwapSplit: () => number;
|
|
11
|
-
export declare const userTwapSlippageAtom: import('jotai').PrimitiveAtom<number> & {
|
|
12
|
-
init: number;
|
|
13
|
-
};
|
|
14
|
-
export declare const twapSlippageAtom: import('jotai').Atom<number>;
|
|
15
|
-
export declare const useTwapSlippage: () => number;
|
|
16
|
-
//# sourceMappingURL=twapParamsAtom.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"twapParamsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapParamsAtom.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,gBAAgB;;CAAwB,CAAC;AAEtD,eAAO,MAAM,eAAe,oBAAuC,CAAC;AAGpE,eAAO,MAAM,iBAAiB;;CAAuB,CAAC;AAGtD,eAAO,MAAM,aAAa,8BAEzB,CAAC;AAEF,eAAO,MAAM,YAAY,cAAoC,CAAC;AAG9D,eAAO,MAAM,oBAAoB;;CAAU,CAAC;AAG5C,eAAO,MAAM,gBAAgB,8BAM5B,CAAC;AAEF,eAAO,MAAM,eAAe,cAAuC,CAAC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { atom } from 'jotai';
|
|
2
|
-
import { useAtomValue } from '../../store.js';
|
|
3
|
-
import { getNumberWithinRange } from '../../../lib/utils/index.js';
|
|
4
|
-
import { TWAP_SPLIT_MIN, TWAP_SPLIT_MAX, TWAP_SLIPPAGE_MAX, TWAP_SLIPPAGE_MIN } from './constants.js';
|
|
5
|
-
|
|
6
|
-
const twapDurationAtom = atom(5);
|
|
7
|
-
const useTwapDuration = () => {
|
|
8
|
-
return useAtomValue(twapDurationAtom);
|
|
9
|
-
};
|
|
10
|
-
const userTwapSplitAtom = atom(TWAP_SPLIT_MIN);
|
|
11
|
-
const twapSplitAtom = atom((get) => getNumberWithinRange(get(userTwapSplitAtom), TWAP_SPLIT_MIN, TWAP_SPLIT_MAX));
|
|
12
|
-
const useTwapSplit = () => {
|
|
13
|
-
return useAtomValue(twapSplitAtom);
|
|
14
|
-
};
|
|
15
|
-
const userTwapSlippageAtom = atom(2);
|
|
16
|
-
const twapSlippageAtom = atom((get) => getNumberWithinRange(get(userTwapSlippageAtom), TWAP_SLIPPAGE_MIN, TWAP_SLIPPAGE_MAX));
|
|
17
|
-
const useTwapSlippage = () => {
|
|
18
|
-
return useAtomValue(twapSlippageAtom);
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
export { twapDurationAtom, twapSlippageAtom, twapSplitAtom, useTwapDuration, useTwapSlippage, useTwapSplit, userTwapSlippageAtom, userTwapSplitAtom };
|
|
22
|
-
//# sourceMappingURL=twapParamsAtom.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"twapParamsAtom.js","sources":["../../../../src/core/twap/state/twapParamsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { getNumberWithinRange } from \"@/lib/utils\";\nimport {\n TWAP_SLIPPAGE_MAX,\n TWAP_SLIPPAGE_MIN,\n TWAP_SPLIT_MAX,\n TWAP_SPLIT_MIN,\n type TwapDuration,\n} from \"./constants\";\n\nexport const twapDurationAtom = atom<TwapDuration>(5);\n\nexport const useTwapDuration = () => useAtomValue(twapDurationAtom);\n\n// atom to track the user input, which can be out of range\nexport const userTwapSplitAtom = atom(TWAP_SPLIT_MIN);\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(2);\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"],"names":["twapDurationAtom","atom","useTwapDuration","useAtomValue","userTwapSplitAtom","TWAP_SPLIT_MIN","twapSplitAtom","get","getNumberWithinRange","TWAP_SPLIT_MAX","useTwapSplit","userTwapSlippageAtom","twapSlippageAtom","TWAP_SLIPPAGE_MIN","TWAP_SLIPPAGE_MAX","useTwapSlippage"],"mappings":";;;;;AAWO,MAAMA,gBAAAA,GAAmBC,KAAmB,CAAC;AAE7C,MAAMC,kBAAkBA,MAAA;AAAA,EAAA,OAAMC,aAAaH,gBAAgB,CAAA;AAAC;AAG5D,MAAMI,iBAAAA,GAAoBH,KAAKI,cAAc;AAG7C,MAAMC,aAAAA,GAAgBL,KAAMM,CAAAA,GAAAA,KACjCC,oBAAAA,CAAqBD,IAAIH,iBAAiB,CAAA,EAAGC,cAAAA,EAAgBI,cAAc,CAC7E;AAEO,MAAMC,eAAeA,MAAA;AAAA,EAAA,OAAMP,aAAaG,aAAa,CAAA;AAAC;AAGtD,MAAMK,oBAAAA,GAAuBV,KAAK,CAAC;AAGnC,MAAMW,gBAAAA,GAAmBX,KAAMM,CAAAA,GAAAA,KACpCC,oBAAAA,CACED,IAAII,oBAAoB,CAAA,EACxBE,iBAAAA,EACAC,iBACF,CACF;AAEO,MAAMC,kBAAkBA,MAAA;AAAA,EAAA,OAAMZ,aAAaS,gBAAgB,CAAA;AAAC;;;;"}
|
|
@@ -1,5 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { useAtomValue } from '../../store.js';
|
|
2
|
-
import { atom } from 'jotai';
|
|
3
|
-
|
|
4
|
-
const twapReceiverAddressAtom = atom();
|
|
5
|
-
const useTwapReceiverAddressValue = () => {
|
|
6
|
-
return useAtomValue(twapReceiverAddressAtom);
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
export { twapReceiverAddressAtom, useTwapReceiverAddressValue };
|
|
10
|
-
//# sourceMappingURL=twapReceiverAddressAtom.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"twapReceiverAddressAtom.js","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\nexport const twapReceiverAddressAtom = atom<Address | undefined>();\n\nexport const useTwapReceiverAddressValue = () => {\n return useAtomValue(twapReceiverAddressAtom);\n};\n"],"names":["twapReceiverAddressAtom","atom","useTwapReceiverAddressValue","useAtomValue"],"mappings":";;;AAKO,MAAMA,0BAA0BC,IAAAA;AAEhC,MAAMC,8BAA8BA,MAAA;AAAA,EAAA,OAClCC,aAAaH,uBAAuB,CAAA;AAAC;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { twapTokenToAtom } from './twapTokenAtoms.js';
|
|
2
|
-
import { currentTwapInputAtom } from './currentTwapInputAtom.js';
|
|
3
|
-
import { atom } from 'jotai';
|
|
4
|
-
import { useAtomValue } from '../../store.js';
|
|
5
|
-
import { isTwapCrossChainAtom } from './isCrosschainAtom.js';
|
|
6
|
-
|
|
7
|
-
const twapSideAtom = atom((get) => {
|
|
8
|
-
const tokenTo = get(twapTokenToAtom);
|
|
9
|
-
const isCrosschain = get(isTwapCrossChainAtom);
|
|
10
|
-
if (isCrosschain) {
|
|
11
|
-
return "SELL";
|
|
12
|
-
}
|
|
13
|
-
if (!tokenTo) {
|
|
14
|
-
return "SELL";
|
|
15
|
-
}
|
|
16
|
-
const currentTwapInput = get(currentTwapInputAtom);
|
|
17
|
-
return currentTwapInput === "from" ? "SELL" : "BUY";
|
|
18
|
-
});
|
|
19
|
-
const useTwapSide = () => {
|
|
20
|
-
return useAtomValue(twapSideAtom);
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
export { twapSideAtom, useTwapSide };
|
|
24
|
-
//# sourceMappingURL=twapSideAtom.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"twapSideAtom.js","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"],"names":["twapSideAtom","atom","get","tokenTo","twapTokenToAtom","isCrosschain","isTwapCrossChainAtom","currentTwapInput","currentTwapInputAtom","useTwapSide","useAtomValue"],"mappings":";;;;;;AAOO,MAAMA,YAAAA,GAAeC,KAAqBC,CAAAA,GAAAA,KAAQ;AACvD,EAAA,MAAMC,OAAAA,GAAUD,IAAIE,eAAe,CAAA;AAEnC,EAAA,MAAMC,YAAAA,GAAeH,IAAII,oBAAoB,CAAA;AAE7C,EAAA,IAAID,YAAAA,EAAc;AAEhB,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,IAAI,CAACF,OAAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAMI,gBAAAA,GAAmBL,IAAIM,oBAAoB,CAAA;AAEjD,EAAA,OAAOD,gBAAAA,KAAqB,SAAS,MAAA,GAAS,KAAA;AAChD,CAAC;AAEM,MAAME,cAAcA,MAAA;AAAA,EAAA,OAClBC,aAAaV,YAAY,CAAA;AAAC;;;;"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Token } from '../../../tokens/state/types';
|
|
2
|
-
export declare const twapTokenFromAtom: import('jotai').WritableAtom<Token, [token: Token], void> & {
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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;AAalD,eAAO,MAAM,iBAAiB;;CAc7B,CAAC;AACF,eAAO,MAAM,eAAe;;CAAgB,CAAC;AAE7C,eAAO,MAAM,gBAAgB,aAAwC,CAAC;AACtE,eAAO,MAAM,cAAc,yBAAsC,CAAC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { wagmiConfig } from '../../../lib/web3/wagmi/config.js';
|
|
2
|
-
import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
|
|
3
|
-
import { atom } from 'jotai';
|
|
4
|
-
import { useAtomValue } from '../../store.js';
|
|
5
|
-
import { isETH } from '../../../tokens/utils/eth.js';
|
|
6
|
-
import { constructWrappedNativeToken } from '../../../tokens/constructor.js';
|
|
7
|
-
import { chainConfigMap } from '../../../lib/web3/wagmi/constants.js';
|
|
8
|
-
|
|
9
|
-
const [defaultTokenFrom] = pickDefaultTokenPair(wagmiConfig.state.chainId, "twap");
|
|
10
|
-
const twapTokenFromAtom = atom(
|
|
11
|
-
defaultTokenFrom,
|
|
12
|
-
// with this change it's technically possible to select WETH-WETH, but
|
|
13
|
-
// it's easier to change in one place here than to add extra logic to selectTokenAtoms,
|
|
14
|
-
// since switch tokens if tokenTo=ETH is disabled anyway.
|
|
15
|
-
// @TODO revert this change when ETH cancelAndWithdraw is supported for TWAP
|
|
16
|
-
(_, set, token) => {
|
|
17
|
-
set(twapTokenFromAtom, isETH(token) ? constructWrappedNativeToken(chainConfigMap[token.network]) : token);
|
|
18
|
-
}
|
|
19
|
-
);
|
|
20
|
-
const twapTokenToAtom = atom();
|
|
21
|
-
const useTwapTokenFrom = () => {
|
|
22
|
-
return useAtomValue(twapTokenFromAtom);
|
|
23
|
-
};
|
|
24
|
-
const useTwapTokenTo = () => {
|
|
25
|
-
return useAtomValue(twapTokenToAtom);
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export { twapTokenFromAtom, twapTokenToAtom, useTwapTokenFrom, useTwapTokenTo };
|
|
29
|
-
//# sourceMappingURL=twapTokenAtoms.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"twapTokenAtoms.js","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\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { constructWrappedNativeToken } from \"@/tokens/constructor\";\nimport { chainConfigMap } from \"@/lib/web3/wagmi/constants\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"twap\"\n);\n\nexport const twapTokenFromAtom = atom(\n defaultTokenFrom,\n // with this change it's technically possible to select WETH-WETH, but\n // it's easier to change in one place here than to add extra logic to selectTokenAtoms,\n // since switch tokens if tokenTo=ETH is disabled anyway.\n // @TODO revert this change when ETH cancelAndWithdraw is supported for TWAP\n (_, set, token: Token) => {\n set(\n twapTokenFromAtom,\n isETH(token)\n ? constructWrappedNativeToken(chainConfigMap[token.network])\n : token\n );\n }\n);\nexport const twapTokenToAtom = atom<Token>();\n\nexport const useTwapTokenFrom = () => useAtomValue(twapTokenFromAtom);\nexport const useTwapTokenTo = () => useAtomValue(twapTokenToAtom);\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","twapTokenFromAtom","atom","_","set","token","isETH","constructWrappedNativeToken","chainConfigMap","network","twapTokenToAtom","useTwapTokenFrom","useAtomValue","useTwapTokenTo"],"mappings":";;;;;;;;AAUA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,MACF,CAAA;AAEO,MAAMC,iBAAAA,GAAoBC,IAAAA;AAAAA,EAC/BN,gBAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAKA,CAACO,CAAAA,EAAGC,GAAAA,EAAKC,KAAAA,KAAiB;AACxBD,IAAAA,GAAAA,CACEH,iBAAAA,EACAK,KAAAA,CAAMD,KAAK,CAAA,GACPE,2BAAAA,CAA4BC,eAAeH,KAAAA,CAAMI,OAAO,CAAC,CAAA,GACzDJ,KACN,CAAA;AAAA,EACF;AACF;AACO,MAAMK,kBAAkBR,IAAAA;AAExB,MAAMS,mBAAmBA,MAAA;AAAA,EAAA,OAAMC,aAAaX,iBAAiB,CAAA;AAAC;AAC9D,MAAMY,iBAAiBA,MAAA;AAAA,EAAA,OAAMD,aAAaF,eAAe,CAAA;AAAC;;;;"}
|
|
@@ -1,12 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { getDestAmountAfterFeeAndSlippage } from '../../../lib/utils/price.js';
|
|
2
|
-
import { toDecimalTrimmed } from '../../../lib/utils/toDecimal.js';
|
|
3
|
-
import { getTotalTwapAmount } from '../../../lib/utils/twap.js';
|
|
4
|
-
import { formatUnits } from 'viem';
|
|
5
|
-
|
|
6
|
-
const tooltip = "The minimum amount of token to receive after slippage.";
|
|
7
|
-
function constructMinReceivedForTwapDetail({
|
|
8
|
-
price,
|
|
9
|
-
slippagePercent,
|
|
10
|
-
numSlices,
|
|
11
|
-
isLoading,
|
|
12
|
-
tokenTo,
|
|
13
|
-
swapSide
|
|
14
|
-
}) {
|
|
15
|
-
if (swapSide === "BUY") return;
|
|
16
|
-
const title = "Minimum Receivable";
|
|
17
|
-
if (!price || !tokenTo) {
|
|
18
|
-
return {
|
|
19
|
-
title,
|
|
20
|
-
value: null,
|
|
21
|
-
isLoading,
|
|
22
|
-
tooltip
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
const minDestAmount = getDestAmountAfterFeeAndSlippage({
|
|
26
|
-
price,
|
|
27
|
-
slippagePercent
|
|
28
|
-
});
|
|
29
|
-
const minDestAmountTotal = getTotalTwapAmount({
|
|
30
|
-
chunkWei: minDestAmount,
|
|
31
|
-
numSlices
|
|
32
|
-
});
|
|
33
|
-
const minDestAmountUnit = formatUnits(BigInt(minDestAmountTotal), tokenTo.decimals);
|
|
34
|
-
const formattedMinDestAmountUnit = toDecimalTrimmed(minDestAmountUnit);
|
|
35
|
-
return {
|
|
36
|
-
title,
|
|
37
|
-
value: `${formattedMinDestAmountUnit} ${tokenTo.symbol}`,
|
|
38
|
-
isLoading,
|
|
39
|
-
tooltip
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
export { constructMinReceivedForTwapDetail };
|
|
44
|
-
//# sourceMappingURL=minimumReceiveable.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"minimumReceiveable.js","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"],"names":["tooltip","constructMinReceivedForTwapDetail","price","slippagePercent","numSlices","isLoading","tokenTo","swapSide","title","value","minDestAmount","getDestAmountAfterFeeAndSlippage","minDestAmountTotal","getTotalTwapAmount","chunkWei","minDestAmountUnit","formatUnits","BigInt","decimals","formattedMinDestAmountUnit","toDecimalTrimmed","symbol"],"mappings":";;;;;AASA,MAAMA,OAAAA,GAAU,wDAAA;AAET,SAASC,iCAAAA,CAAkC;AAAA,EAChDC,KAAAA;AAAAA,EACAC,eAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC;AAQF,CAAA,EAAgC;AAE9B,EAAA,IAAIA,aAAa,KAAA,EAAO;AAExB,EAAA,MAAMC,KAAAA,GAAQ,oBAAA;AAEd,EAAA,IAAI,CAACN,KAAAA,IAAS,CAACI,OAAAA,EAAS;AACtB,IAAA,OAAO;AAAA,MACLE,KAAAA;AAAAA,MACAC,KAAAA,EAAO,IAAA;AAAA,MACPJ,SAAAA;AAAAA,MACAL;AAAAA,KACF;AAAA,EACF;AAEA,EAAA,MAAMU,gBAAgBC,gCAAAA,CAAiC;AAAA,IACrDT,KAAAA;AAAAA,IACAC;AAAAA,GACD,CAAA;AAGD,EAAA,MAAMS,qBAAqBC,kBAAAA,CAAmB;AAAA,IAC5CC,QAAAA,EAAUJ,aAAAA;AAAAA,IACVN;AAAAA,GACD,CAAA;AAED,EAAA,MAAMW,oBAAoBC,WAAAA,CACxBC,MAAAA,CAAOL,kBAAkB,CAAA,EACzBN,QAAQY,QACV,CAAA;AAEA,EAAA,MAAMC,0BAAAA,GAA6BC,iBAAiBL,iBAAiB,CAAA;AAErE,EAAA,OAAO;AAAA,IACLP,KAAAA;AAAAA,IACAC,KAAAA,EAAO,CAAA,EAAGU,0BAA0B,CAAA,CAAA,EAAIb,QAAQe,MAAM,CAAA,CAAA;AAAA,IACtDhB,SAAAA;AAAAA,IACAL;AAAAA,GACF;AACF;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
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;AAgB3C,eAAO,MAAM,uBAAuB,QAC9B,kCAAkC,GAAG,IAuExC,CAAC"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { d as distExports } from '../../_virtual/index.js';
|
|
3
|
-
import { useWidgetTokens } from '../inputs/state/common.js';
|
|
4
|
-
import { useAtomValue } from '../store.js';
|
|
5
|
-
import { twapPayInputAmountWeiAtom, twapReceiveInputAmountWeiAtom } from './state/twapInputAmountAtom.js';
|
|
6
|
-
import { twapDurationAtom, twapSlippageAtom } from './state/twapParamsAtom.js';
|
|
7
|
-
import { TWAP_DURATION_OPTIONS } from './state/constants.js';
|
|
8
|
-
import { DeltaIcon } from '../../components/widget/Icon/DeltaIcon.js';
|
|
9
|
-
import { SwapRate } from '../../components/widget/SwapRate/SwapRate.js';
|
|
10
|
-
import { useTwapPrices } from '../../hooks/swap/prices/useTwapPrices.js';
|
|
11
|
-
import { constructMinReceivedForTwapDetail } from './twapDetails/minimumReceiveable.js';
|
|
12
|
-
import { isTruthy } from '../../lib/utils/index.js';
|
|
13
|
-
|
|
14
|
-
const useTwapDetailsListProps = () => {
|
|
15
|
-
const $ = distExports.c(19);
|
|
16
|
-
const {
|
|
17
|
-
tokenFrom,
|
|
18
|
-
tokenTo
|
|
19
|
-
} = useWidgetTokens("twap");
|
|
20
|
-
const {
|
|
21
|
-
isLoading,
|
|
22
|
-
side,
|
|
23
|
-
price,
|
|
24
|
-
numSlices
|
|
25
|
-
} = useTwapPrices();
|
|
26
|
-
const srcAmountWei = useAtomValue(twapPayInputAmountWeiAtom);
|
|
27
|
-
const destAmountWei = useAtomValue(twapReceiveInputAmountWeiAtom);
|
|
28
|
-
const duration = useAtomValue(twapDurationAtom);
|
|
29
|
-
const slippage = useAtomValue(twapSlippageAtom);
|
|
30
|
-
if (!tokenTo || destAmountWei === void 0 || !srcAmountWei || srcAmountWei === "0") {
|
|
31
|
-
return null;
|
|
32
|
-
}
|
|
33
|
-
const isBuy = side === "BUY";
|
|
34
|
-
let t0;
|
|
35
|
-
if ($[0] !== duration || $[1] !== isLoading || $[2] !== numSlices || $[3] !== price || $[4] !== side || $[5] !== slippage || $[6] !== tokenTo) {
|
|
36
|
-
const durationLabel = TWAP_DURATION_OPTIONS.find((o) => o.value === duration)?.label ?? `${duration} min`;
|
|
37
|
-
const minReceivableDetail = constructMinReceivedForTwapDetail({
|
|
38
|
-
price,
|
|
39
|
-
isLoading,
|
|
40
|
-
numSlices,
|
|
41
|
-
tokenTo,
|
|
42
|
-
slippagePercent: slippage,
|
|
43
|
-
swapSide: side
|
|
44
|
-
});
|
|
45
|
-
t0 = [{
|
|
46
|
-
title: "Order Routing",
|
|
47
|
-
value: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
|
|
48
|
-
/* @__PURE__ */ jsx(DeltaIcon, {}),
|
|
49
|
-
" Delta"
|
|
50
|
-
] })
|
|
51
|
-
}, {
|
|
52
|
-
title: "Slippage Tolerance",
|
|
53
|
-
value: `${slippage}%`
|
|
54
|
-
}, {
|
|
55
|
-
title: "Order Duration",
|
|
56
|
-
value: durationLabel
|
|
57
|
-
}, minReceivableDetail].filter(isTruthy);
|
|
58
|
-
$[0] = duration;
|
|
59
|
-
$[1] = isLoading;
|
|
60
|
-
$[2] = numSlices;
|
|
61
|
-
$[3] = price;
|
|
62
|
-
$[4] = side;
|
|
63
|
-
$[5] = slippage;
|
|
64
|
-
$[6] = tokenTo;
|
|
65
|
-
$[7] = t0;
|
|
66
|
-
} else {
|
|
67
|
-
t0 = $[7];
|
|
68
|
-
}
|
|
69
|
-
const details = t0;
|
|
70
|
-
let t1;
|
|
71
|
-
if ($[8] !== destAmountWei || $[9] !== isBuy || $[10] !== isLoading || $[11] !== srcAmountWei || $[12] !== tokenFrom || $[13] !== tokenTo) {
|
|
72
|
-
t1 = /* @__PURE__ */ jsx(SwapRate, { srcToken: tokenFrom, destToken: tokenTo, srcAmountWei, destAmountWei, isLoading, reverse: isBuy, prefix: "Market Rate:" });
|
|
73
|
-
$[8] = destAmountWei;
|
|
74
|
-
$[9] = isBuy;
|
|
75
|
-
$[10] = isLoading;
|
|
76
|
-
$[11] = srcAmountWei;
|
|
77
|
-
$[12] = tokenFrom;
|
|
78
|
-
$[13] = tokenTo;
|
|
79
|
-
$[14] = t1;
|
|
80
|
-
} else {
|
|
81
|
-
t1 = $[14];
|
|
82
|
-
}
|
|
83
|
-
let t2;
|
|
84
|
-
if ($[15] === Symbol.for("react.memo_cache_sentinel")) {
|
|
85
|
-
t2 = {
|
|
86
|
-
root: "mt-4"
|
|
87
|
-
};
|
|
88
|
-
$[15] = t2;
|
|
89
|
-
} else {
|
|
90
|
-
t2 = $[15];
|
|
91
|
-
}
|
|
92
|
-
let t3;
|
|
93
|
-
if ($[16] !== details || $[17] !== t1) {
|
|
94
|
-
t3 = {
|
|
95
|
-
details,
|
|
96
|
-
trigger: t1,
|
|
97
|
-
classes: t2
|
|
98
|
-
};
|
|
99
|
-
$[16] = details;
|
|
100
|
-
$[17] = t1;
|
|
101
|
-
$[18] = t3;
|
|
102
|
-
} else {
|
|
103
|
-
t3 = $[18];
|
|
104
|
-
}
|
|
105
|
-
return t3;
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
export { useTwapDetailsListProps };
|
|
109
|
-
//# sourceMappingURL=useTwapDetailsListProps.js.map
|