@velora-dex/widget 0.2.5-dev.4 → 0.2.5-dev.6
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/dropdown-menu.d.ts +3 -2
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.js +44 -22
- package/dist/components/ui/dropdown-menu.js.map +1 -1
- package/dist/components/ui/input.js +1 -1
- package/dist/components/ui/input.js.map +1 -1
- package/dist/components/ui/tooltip.d.ts +4 -2
- package/dist/components/ui/tooltip.d.ts.map +1 -1
- package/dist/components/ui/tooltip.js +44 -27
- package/dist/components/ui/tooltip.js.map +1 -1
- package/dist/components/web3/ConnectedWallet/ConnectedWallet.js +7 -7
- package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
- package/dist/components/web3/providers.d.ts.map +1 -1
- package/dist/components/web3/providers.js +1 -2
- package/dist/components/web3/providers.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.d.ts +2 -0
- package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.d.ts.map +1 -0
- package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js +131 -0
- package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -0
- package/dist/components/widget/AppHeader/Activities/ActivityItems.js +3 -3
- package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.d.ts +5 -21
- package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.js +48 -204
- package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.d.ts +7 -10
- package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.js +37 -75
- package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/utils.d.ts +2 -2
- package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
- package/dist/components/widget/AppHeader/ActivityButton.d.ts +0 -1
- package/dist/components/widget/AppHeader/ActivityButton.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/ActivityButton.js +38 -160
- package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
- package/dist/components/widget/AppHeader/AppHeader.js +1 -1
- package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
- package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +4 -14
- package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +9 -2
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +59 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js +3 -2
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +17 -9
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
- package/dist/components/widget/Dialog/state/dialogAtom.d.ts.map +1 -1
- package/dist/components/widget/Drawer/Overlay.js +1 -1
- package/dist/components/widget/Drawer/Overlay.js.map +1 -1
- package/dist/components/widget/Drawer/index.d.ts +3 -2
- package/dist/components/widget/Drawer/index.d.ts.map +1 -1
- package/dist/components/widget/Drawer/index.js +96 -80
- package/dist/components/widget/Drawer/index.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 +3 -2
- package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
- package/dist/components/widget/ImportToken/ImportToken.js +1 -1
- package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -0
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -0
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -0
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -0
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.d.ts.map +1 -0
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -0
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -0
- package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderListItem.js +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -0
- package/dist/components/widget/LimitOrderItem/constants.d.ts.map +1 -0
- package/dist/components/widget/LimitOrderItem/constants.js.map +1 -0
- package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -0
- package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -0
- package/dist/components/widget/LimitOrderItem/utils.js.map +1 -0
- package/dist/components/widget/OrderExpiryInput/index.d.ts.map +1 -1
- package/dist/components/widget/OrderExpiryInput/index.js +6 -7
- package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.d.ts.map +1 -0
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -0
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.d.ts.map +1 -0
- package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/OtcOrderDetails.js +1 -1
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.js.map +1 -0
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.d.ts.map +1 -0
- package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.js.map +1 -0
- package/dist/components/widget/OtcOrderItem/OtcOrderListItem.d.ts.map +1 -0
- package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderListItem.js +1 -1
- package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js.map +1 -0
- package/dist/components/widget/OtcOrderItem/constants.d.ts.map +1 -0
- package/dist/components/widget/OtcOrderItem/constants.js.map +1 -0
- package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/types.d.ts +1 -1
- package/dist/components/widget/OtcOrderItem/types.d.ts.map +1 -0
- package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/utils.d.ts +0 -6
- package/dist/components/widget/OtcOrderItem/utils.d.ts.map +1 -0
- package/dist/components/widget/OtcOrderItem/utils.js.map +1 -0
- package/dist/components/widget/PoweredBy/PoweredBy.js +1 -1
- package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +2 -1
- package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts +2 -2
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js +2 -2
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
- package/dist/components/widget/Screen/GenericScreen.d.ts +13 -0
- package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -0
- package/dist/components/widget/Screen/GenericScreen.js +66 -0
- package/dist/components/widget/Screen/GenericScreen.js.map +1 -0
- package/dist/components/widget/Screen/ScreenContainer.d.ts +7 -0
- package/dist/components/widget/Screen/ScreenContainer.d.ts.map +1 -0
- package/dist/components/widget/Screen/ScreenContainer.js +60 -0
- package/dist/components/widget/Screen/ScreenContainer.js.map +1 -0
- package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.js +109 -201
- package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js +1 -1
- package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +2 -3
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +2 -6
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +8 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +126 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts +6 -0
- package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js +86 -1
- package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +8 -2
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +103 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +10 -3
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +152 -9
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +8 -2
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +101 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeDetails.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeDetails.js +105 -78
- package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverview.d.ts +3 -1
- package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverview.js +26 -21
- package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +30 -0
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +75 -0
- package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -0
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +14 -0
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -0
- package/dist/components/widget/TradeOverview/utils/preWrap.js +37 -0
- package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -0
- package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +1 -1
- package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
- package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts.map +1 -1
- package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js +2 -1
- package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -1
- package/dist/components/widget/TradeParameters/useTempTradeParameters.js +1 -1
- package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
- package/dist/components/widget/TransactionDetails/types.d.ts +1 -1
- package/dist/components/widget/TransactionDetails/types.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.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/common/DetailWithTooltip.d.ts +1 -0
- package/dist/configurator/components/common/DetailWithTooltip.d.ts.map +1 -1
- package/dist/core/DevTools.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.js +10 -11
- package/dist/core/LimitOrderButton.js.map +1 -1
- package/dist/core/OtcOrderButton.d.ts.map +1 -1
- package/dist/core/OtcOrderButton.js +11 -15
- package/dist/core/OtcOrderButton.js.map +1 -1
- package/dist/core/TradeFlowScreenButton.d.ts +27 -0
- package/dist/core/TradeFlowScreenButton.d.ts.map +1 -0
- package/dist/core/TradeFlowScreenButton.js +206 -0
- package/dist/core/TradeFlowScreenButton.js.map +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +194 -162
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenSwitcherProps.js +1 -1
- package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/state/common.d.ts +3 -13
- package/dist/core/inputs/state/common.d.ts.map +1 -1
- package/dist/core/inputs/state/common.js +8 -37
- package/dist/core/inputs/state/common.js.map +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.js +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
- package/dist/core/inputs/state/selectedTokenAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/selectedTokenAtom.js +2 -1
- package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js +20 -77
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/inputs/state/types.d.ts +1 -11
- package/dist/core/inputs/state/types.d.ts.map +1 -1
- package/dist/core/limit/state/currentLimitInputAtom.d.ts +2 -2
- package/dist/core/limit/state/deadlineAtom.d.ts +1 -5
- package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
- package/dist/core/limit/state/deadlineAtom.js +5 -27
- package/dist/core/limit/state/deadlineAtom.js.map +1 -1
- package/dist/core/limit/state/limitInputActionsAtom.d.ts +0 -3
- package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
- package/dist/core/limit/state/limitInputActionsAtom.js +3 -7
- package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
- package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
- package/dist/core/limit/state/selectedTokenAtom.js +2 -2
- package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/limit/state/utils.d.ts +0 -7
- package/dist/core/limit/state/utils.d.ts.map +1 -1
- package/dist/core/limit/state/utils.js +2 -32
- package/dist/core/limit/state/utils.js.map +1 -1
- package/dist/core/limit/useLimitDetailsListProps.js +1 -1
- package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
- package/dist/core/limit/useLimitPriceDifference.js +1 -1
- package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
- package/dist/core/limit/useLimitPriceInputProps.js +1 -1
- package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
- package/dist/core/limit/useLimitRate.js +1 -1
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
- package/dist/core/limit/useLimitTokenSwitcherProps.js +1 -1
- package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.js +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
- package/dist/core/logger.js +1 -1
- package/dist/core/logger.js.map +1 -1
- package/dist/core/otc/state/currentOtcInputAtom.d.ts +2 -2
- package/dist/core/otc/state/deadlineAtom.d.ts +1 -5
- package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
- package/dist/core/otc/state/deadlineAtom.js +5 -27
- package/dist/core/otc/state/deadlineAtom.js.map +1 -1
- package/dist/core/otc/state/otcInputActionsAtom.d.ts +0 -3
- package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
- package/dist/core/otc/state/otcInputActionsAtom.js +3 -7
- package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
- package/dist/core/otc/state/receiverAddressAtom.d.ts.map +1 -1
- package/dist/core/otc/state/receiverAddressAtom.js +2 -1
- package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
- package/dist/core/otc/state/selectedTokenAtom.d.ts.map +1 -1
- package/dist/core/otc/state/selectedTokenAtom.js +2 -2
- package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/otc/useOtcDetailsListProps.js +1 -1
- package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
- package/dist/core/otc/useOtcPriceDifference.js +1 -1
- package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
- package/dist/core/otc/useOtcPriceInputProps.js +1 -1
- package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenFromInputProps.js +1 -1
- package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenSwitcherProps.js +1 -1
- package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenToInputProps.js +1 -1
- package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
- package/dist/core/screen/screenByType.d.ts +9 -0
- package/dist/core/screen/screenByType.d.ts.map +1 -0
- package/dist/core/screen/screenByType.js +13 -0
- package/dist/core/screen/screenByType.js.map +1 -0
- package/dist/core/screen/state/screenAtom.d.ts +20 -0
- package/dist/core/screen/state/screenAtom.d.ts.map +1 -0
- package/dist/core/screen/state/screenAtom.js +110 -0
- package/dist/core/screen/state/screenAtom.js.map +1 -0
- package/dist/core/state/chainToAtom.d.ts.map +1 -1
- package/dist/core/state/chainToAtom.js +2 -1
- package/dist/core/state/chainToAtom.js.map +1 -1
- package/dist/core/state/configActionsAtom.d.ts.map +1 -1
- package/dist/core/state/configActionsAtom.js +3 -1
- package/dist/core/state/configActionsAtom.js.map +1 -1
- package/dist/core/state/configAtom.d.ts +4 -2
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +9 -4
- 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 +2 -1
- package/dist/core/state/configEffectAtom.js.map +1 -1
- package/dist/core/state/containerAtom.d.ts.map +1 -1
- package/dist/core/state/containerAtom.js +2 -1
- package/dist/core/state/containerAtom.js.map +1 -1
- package/dist/core/state/currentSwapInputAtom.d.ts +1 -1
- package/dist/core/state/currentSwapInputAtom.d.ts.map +1 -1
- package/dist/core/state/currentSwapInputAtom.js +1 -5
- package/dist/core/state/currentSwapInputAtom.js.map +1 -1
- package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
- package/dist/core/state/enabledChainsAtom.js +2 -1
- package/dist/core/state/enabledChainsAtom.js.map +1 -1
- package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
- package/dist/core/state/externalProviderAtom.js +2 -1
- package/dist/core/state/externalProviderAtom.js.map +1 -1
- package/dist/core/state/isCrosschainAtom.d.ts.map +1 -1
- package/dist/core/state/isCrosschainAtom.js +2 -1
- package/dist/core/state/isCrosschainAtom.js.map +1 -1
- package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
- package/dist/core/state/tradeModeAtom.js +2 -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 +2 -1
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/core/store.d.ts +29 -0
- package/dist/core/store.d.ts.map +1 -0
- package/dist/core/store.js +15 -0
- package/dist/core/store.js.map +1 -0
- package/dist/core/swapDetails/useSwapDetailsListProps.js +1 -1
- package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
- package/dist/core/types.d.ts +6 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/events/effects/price.js +1 -1
- package/dist/events/effects/price.js.map +1 -1
- package/dist/events/effects/swapMode.js +1 -1
- package/dist/events/effects/swapMode.js.map +1 -1
- package/dist/events/hooks/useActivateEffects.js +1 -1
- package/dist/events/hooks/useActivateEffects.js.map +1 -1
- package/dist/hooks/batch/useCanBatchTxs.d.ts.map +1 -1
- package/dist/hooks/batch/useCanBatchTxs.js +33 -29
- package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
- package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
- package/dist/hooks/gas/useGasPrices.js +15 -14
- package/dist/hooks/gas/useGasPrices.js.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.js +2 -1
- package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +2 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.d.ts.map +1 -1
- package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js +2 -1
- package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
- package/dist/hooks/permit/utils/encodeArgs.js +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +6 -6
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
- package/dist/hooks/swap/prices/usePricesParams.js +6 -1
- package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +3 -1
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +2 -0
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +8 -6
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
- package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +1 -1
- package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
- package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
- package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
- package/dist/hooks/tokens/prices/queries.d.ts.map +1 -1
- package/dist/hooks/tokens/prices/queries.js +2 -2
- package/dist/hooks/tokens/prices/queries.js.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.js +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
- package/dist/hooks/tokens/useTokenTaxFee.js +2 -2
- package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
- package/dist/hooks/txs/queries/useTxHistory.d.ts.map +1 -1
- package/dist/hooks/txs/queries/useTxHistory.js +2 -2
- package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
- package/dist/hooks/useClickOutside.d.ts +4 -0
- package/dist/hooks/useClickOutside.d.ts.map +1 -0
- package/dist/hooks/useClickOutside.js +35 -0
- package/dist/hooks/useClickOutside.js.map +1 -0
- package/dist/hooks/useEIP1559Enabled.js +1 -1
- package/dist/hooks/useEIP1559Enabled.js.map +1 -1
- package/dist/hooks/useGlobalDeltaEnabled.js +1 -1
- package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js +11 -11
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/hooks/useSlippage.js +1 -1
- package/dist/hooks/useSlippage.js.map +1 -1
- package/dist/lib/constants/index.d.ts +0 -2
- package/dist/lib/constants/index.d.ts.map +1 -1
- package/dist/lib/constants/index.js +1 -4
- package/dist/lib/constants/index.js.map +1 -1
- package/dist/lib/constants/urls.d.ts +4 -0
- package/dist/lib/constants/urls.d.ts.map +1 -0
- package/dist/lib/constants/urls.js +30 -0
- package/dist/lib/constants/urls.js.map +1 -0
- package/dist/lib/utils/explorer.d.ts.map +1 -1
- package/dist/lib/utils/explorer.js +3 -3
- package/dist/lib/utils/explorer.js.map +1 -1
- package/dist/lib/utils/price.js +1 -1
- package/dist/styles.css +23 -22
- package/dist/tokens/hooks.js +1 -1
- package/dist/tokens/hooks.js.map +1 -1
- package/dist/tokens/lists/state/effects.js +1 -2
- package/dist/tokens/lists/state/effects.js.map +1 -1
- package/dist/tokens/queries.js +1 -1
- package/dist/tokens/queries.js.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.js +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
- package/dist/transactions/state/hooks/useTransactions.js +2 -2
- package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.js +1 -1
- package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
- package/package.json +4 -3
- package/dist/components/ui/dialog.js +0 -261
- package/dist/components/ui/dialog.js.map +0 -1
- package/dist/components/widget/AppHeader/OtcOrdersDrawerButton.d.ts +0 -2
- package/dist/components/widget/AppHeader/OtcOrdersDrawerButton.d.ts.map +0 -1
- package/dist/components/widget/Dialog/ConnectWalletDialog/ConnectWalletDialog.js +0 -24
- package/dist/components/widget/Dialog/ConnectWalletDialog/ConnectWalletDialog.js.map +0 -1
- package/dist/components/widget/Dialog/DialogRoot.js +0 -47
- package/dist/components/widget/Dialog/DialogRoot.js.map +0 -1
- package/dist/components/widget/Dialog/dialogByType.js +0 -10
- package/dist/components/widget/Dialog/dialogByType.js.map +0 -1
- package/dist/components/widget/Dialog/state/dialogAtom.js +0 -85
- package/dist/components/widget/Dialog/state/dialogAtom.js.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.js.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.js.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.js.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderTabs.d.ts +0 -7
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderTabs.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrdersList.d.ts +0 -7
- package/dist/components/widget/LimitOrdersDrawer/LimitOrdersList.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/constants.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/constants.js.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/types.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/utils.d.ts.map +0 -1
- package/dist/components/widget/LimitOrdersDrawer/utils.js.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.js.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.js.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.js.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.js.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderTabs.d.ts +0 -7
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderTabs.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrdersList.d.ts +0 -12
- package/dist/components/widget/OtcOrdersDrawer/OtcOrdersList.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/constants.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/constants.js.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/types.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/utils.d.ts.map +0 -1
- package/dist/components/widget/OtcOrdersDrawer/utils.js.map +0 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.d.ts +0 -5
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.d.ts.map +0 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.js +0 -6
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.js.map +0 -1
- package/dist/configurator/components/common/ButtonGroup.d.ts +0 -12
- package/dist/configurator/components/common/ButtonGroup.d.ts.map +0 -1
- package/dist/core/TradeFlowButton.d.ts +0 -27
- package/dist/core/TradeFlowButton.d.ts.map +0 -1
- package/dist/core/TradeFlowButton.js +0 -963
- package/dist/core/TradeFlowButton.js.map +0 -1
- package/dist/core/inputs/state/store.d.ts +0 -2
- package/dist/core/inputs/state/store.d.ts.map +0 -1
- package/dist/core/inputs/state/store.js +0 -6
- package/dist/core/inputs/state/store.js.map +0 -1
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/Controls.d.ts +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/Controls.js +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/LimitOrderDetails.d.ts +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/LimitOrderDetails.js +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/utils.d.ts +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/utils.js +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderListItem.d.ts +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/constants.d.ts +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/constants.js +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/types.d.ts +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/utils.d.ts +0 -0
- /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/utils.js +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/Controls.d.ts +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/Controls.js +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/OtcOrderDetails.d.ts +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/utils.d.ts +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/utils.js +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderListItem.d.ts +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/constants.d.ts +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/constants.js +0 -0
- /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/utils.js +0 -0
|
@@ -1,25 +1,15 @@
|
|
|
1
1
|
import { TradeMode } from '../../state/tradeModeAtom';
|
|
2
2
|
import { SupportedChainId } from '../../../lib/web3/wagmi/types';
|
|
3
|
-
import { SwapSideUnion } from '@velora-dex/sdk';
|
|
4
3
|
import { Address } from 'viem';
|
|
5
4
|
export type FormInputProps = {
|
|
6
5
|
/** @description The form to activate, defaults to "swap" */
|
|
7
6
|
selectedForm?: TradeMode;
|
|
8
7
|
tokenFromAddress?: Address;
|
|
9
|
-
/** @description The chainId of the tokenFrom, for selectedForm
|
|
8
|
+
/** @description The chainId of the tokenFrom, for selectedForm!=swap some chains are disabled */
|
|
10
9
|
srcChainId?: SupportedChainId;
|
|
11
10
|
tokenToAddress?: Address;
|
|
12
11
|
/** @description The chainId of the tokenTo, only functional together with selectedForm = "swap"*/
|
|
13
12
|
destChainId?: SupportedChainId;
|
|
14
|
-
/** @description The amount of the pay input, functional when selectedForm is "limit" or "otc", or when selectedForm is "swap" with side = "SELL" */
|
|
15
13
|
sendAmount?: string;
|
|
16
|
-
/** @description The amount of the receive input, only functional together with selectedForm = "swap" and side = "BUY" */
|
|
17
|
-
receiveAmount?: string;
|
|
18
|
-
/** @description The side of the swap, only functional together with selectedForm = "swap" */
|
|
19
|
-
side?: SwapSideUnion;
|
|
20
|
-
/** @description The price rate amount, only functional together with selectedForm = "limit" or "otc" */
|
|
21
|
-
priceRateAmount?: string;
|
|
22
|
-
/** @description The order deadline in seconds, only functional together with selectedForm = "limit" or "otc" */
|
|
23
|
-
orderDeadline?: string;
|
|
24
14
|
};
|
|
25
15
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,MAAM,MAAM,cAAc,GAAG;IAC3B,4DAA4D;IAC5D,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iGAAiG;IACjG,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kGAAkG;IAClG,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;CAGrB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const currentLimitInputAtom: import('jotai').PrimitiveAtom<"
|
|
2
|
-
init: "
|
|
1
|
+
export declare const currentLimitInputAtom: import('jotai').PrimitiveAtom<"limit" | "from" | "to"> & {
|
|
2
|
+
init: "limit" | "from" | "to";
|
|
3
3
|
};
|
|
4
4
|
//# sourceMappingURL=currentLimitInputAtom.d.ts.map
|
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
import { SetStateAction } from 'jotai';
|
|
2
1
|
import { timeUnits } from './constants';
|
|
3
2
|
export type TimeUnit = (typeof timeUnits)[number]["label"];
|
|
4
3
|
export type TimeUnitObject = {
|
|
5
4
|
label: TimeUnit;
|
|
6
5
|
value: number;
|
|
7
6
|
};
|
|
8
|
-
export declare const timeUnitAtom: import('jotai').
|
|
7
|
+
export declare const timeUnitAtom: import('jotai').PrimitiveAtom<TimeUnitObject> & {
|
|
9
8
|
init: TimeUnitObject;
|
|
10
9
|
};
|
|
11
|
-
export declare const deadlineFromPropsAtom: import('jotai').WritableAtom<number | undefined, [number | undefined], void> & {
|
|
12
|
-
init: number | undefined;
|
|
13
|
-
};
|
|
14
10
|
export declare const deadlineAtom: import('jotai').Atom<number>;
|
|
15
11
|
export declare const useLimitDeadline: () => number;
|
|
16
12
|
//# sourceMappingURL=deadlineAtom.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deadlineAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/deadlineAtom.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deadlineAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/deadlineAtom.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgC,SAAS,EAAE,MAAM,aAAa,CAAC;AAGtE,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;AAE3D,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,YAAY;;CAAwC,CAAC;AAElE,eAAO,MAAM,YAAY,8BAWvB,CAAC;AAEH,eAAO,MAAM,gBAAgB,cAE5B,CAAC"}
|
|
@@ -1,32 +1,10 @@
|
|
|
1
|
-
import { atom
|
|
1
|
+
import { atom } from 'jotai';
|
|
2
|
+
import { useAtomValue } from '../../store.js';
|
|
2
3
|
import { defaultTimeUnit, minTimeUnit } from './constants.js';
|
|
3
|
-
import {
|
|
4
|
+
import { timeUnitToSeconds } from './utils.js';
|
|
4
5
|
|
|
5
|
-
const timeUnitAtom = atom(defaultTimeUnit
|
|
6
|
-
const updatedTimeUnit = typeof newTimeUnit === "function" ? newTimeUnit(get(timeUnitAtom)) : newTimeUnit;
|
|
7
|
-
set(timeUnitAtom, updatedTimeUnit);
|
|
8
|
-
if (resetDeadlineFromProps) {
|
|
9
|
-
set(deadlineFromPropsAtom, void 0);
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
const deadlineFromPropsAtom = atom(
|
|
13
|
-
void 0,
|
|
14
|
-
// timestamp in seconds
|
|
15
|
-
(get, set, newDeadline) => {
|
|
16
|
-
set(deadlineFromPropsAtom, newDeadline);
|
|
17
|
-
if (newDeadline === void 0) return;
|
|
18
|
-
const currentDeadlineTimeUnit = get(timeUnitAtom);
|
|
19
|
-
const newDeadlineTimeUnit = getClosestTimeUnit(newDeadline);
|
|
20
|
-
if (currentDeadlineTimeUnit.label !== newDeadlineTimeUnit.label || currentDeadlineTimeUnit.value !== newDeadlineTimeUnit.value) {
|
|
21
|
-
set(timeUnitAtom, newDeadlineTimeUnit, false);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
);
|
|
6
|
+
const timeUnitAtom = atom(defaultTimeUnit);
|
|
25
7
|
const deadlineAtom = atom((get) => {
|
|
26
|
-
const deadlineFromProps = get(deadlineFromPropsAtom);
|
|
27
|
-
if (deadlineFromProps) {
|
|
28
|
-
return deadlineFromProps;
|
|
29
|
-
}
|
|
30
8
|
let timeUnit = get(timeUnitAtom);
|
|
31
9
|
if (timeUnit.label === minTimeUnit.label && timeUnit.value < minTimeUnit.value) {
|
|
32
10
|
timeUnit = minTimeUnit;
|
|
@@ -37,5 +15,5 @@ const useLimitDeadline = () => {
|
|
|
37
15
|
return useAtomValue(deadlineAtom);
|
|
38
16
|
};
|
|
39
17
|
|
|
40
|
-
export { deadlineAtom,
|
|
18
|
+
export { deadlineAtom, timeUnitAtom, useLimitDeadline };
|
|
41
19
|
//# sourceMappingURL=deadlineAtom.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deadlineAtom.js","sources":["../../../../src/core/limit/state/deadlineAtom.ts"],"sourcesContent":["import { atom
|
|
1
|
+
{"version":3,"file":"deadlineAtom.js","sources":["../../../../src/core/limit/state/deadlineAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { defaultTimeUnit, minTimeUnit, timeUnits } from \"./constants\";\nimport { timeUnitToSeconds } from \"./utils\";\n\nexport type TimeUnit = (typeof timeUnits)[number][\"label\"];\n\nexport type TimeUnitObject = {\n label: TimeUnit;\n value: number;\n};\n\nexport const timeUnitAtom = atom<TimeUnitObject>(defaultTimeUnit);\n\nexport const deadlineAtom = atom((get) => {\n let timeUnit = get(timeUnitAtom);\n\n if (\n timeUnit.label === minTimeUnit.label &&\n timeUnit.value < minTimeUnit.value\n ) {\n timeUnit = minTimeUnit;\n }\n\n return Math.floor(Date.now() / 1000 + timeUnitToSeconds(timeUnit));\n});\n\nexport const useLimitDeadline = () => {\n return useAtomValue(deadlineAtom);\n};\n"],"names":["timeUnitAtom","atom","defaultTimeUnit","deadlineAtom","get","timeUnit","label","minTimeUnit","value","Math","floor","Date","now","timeUnitToSeconds","useLimitDeadline","useAtomValue"],"mappings":";;;;;AAYO,MAAMA,YAAAA,GAAeC,KAAqBC,eAAe;AAEzD,MAAMC,YAAAA,GAAeF,KAAMG,CAAAA,GAAAA,KAAQ;AACxC,EAAA,IAAIC,QAAAA,GAAWD,IAAIJ,YAAY,CAAA;AAE/B,EAAA,IACEK,SAASC,KAAAA,KAAUC,WAAAA,CAAYD,SAC/BD,QAAAA,CAASG,KAAAA,GAAQD,YAAYC,KAAAA,EAC7B;AACAH,IAAAA,QAAAA,GAAWE,WAAAA;AAAAA,EACb;AAEA,EAAA,OAAOE,IAAAA,CAAKC,MAAMC,IAAAA,CAAKC,GAAAA,KAAQ,GAAA,GAAOC,iBAAAA,CAAkBR,QAAQ,CAAC,CAAA;AACnE,CAAC;AAEM,MAAMS,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAaZ,YAAY,CAAA;AAAC;;;;"}
|
|
@@ -8,9 +8,6 @@ export declare const setLimitPayAmountAtom: import('jotai').WritableAtom<null, [
|
|
|
8
8
|
export declare const setLimitAmountAtomFromProps: import('jotai').WritableAtom<null, [amount: string], void> & {
|
|
9
9
|
init: null;
|
|
10
10
|
};
|
|
11
|
-
export declare const setLimitPriceAmountAtomFromProps: import('jotai').WritableAtom<null, [amount: string], void> & {
|
|
12
|
-
init: null;
|
|
13
|
-
};
|
|
14
11
|
export declare const setLimitReceiveAmountAtom: import('jotai').WritableAtom<null, [receiveAmount: string], void> & {
|
|
15
12
|
init: null;
|
|
16
13
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limitInputActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/limitInputActionsAtom.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"limitInputActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/limitInputActionsAtom.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,eAAO,MAAM,sBAAsB;;CAwBlC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAyBjC,CAAC;AAEF,eAAO,MAAM,2BAA2B;;CAMvC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;CA2BrC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;CAiB/B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;CAE/B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;CAGnC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;CAGtC,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { atom } from 'jotai';
|
|
2
|
-
import {
|
|
2
|
+
import { limitPayInputAmountAtom, limitPriceRatesAtom, limitPriceAmountAtom, limitReceiveInputAmountAtom } from './limitInputAmountAtom.js';
|
|
3
3
|
import { isLimitPriceLockedAtom } from './isLimitPriceLockedAtom.js';
|
|
4
4
|
import Big from 'big.js';
|
|
5
5
|
import { currentLimitInputAtom } from './currentLimitInputAtom.js';
|
|
6
6
|
import { isLimitPriceReversedAtom } from './isLimitPriceReversedAtom.js';
|
|
7
|
-
import { calculatePayAmount, calculateRates
|
|
7
|
+
import { calculateReceiveAmount, calculatePayAmount, calculateRates } from './utils.js';
|
|
8
8
|
import { zeroRates } from './constants.js';
|
|
9
9
|
|
|
10
10
|
const setLimitPriceRatesAtom = atom(null, (get, set, priceRates, recalculateReceive = true) => {
|
|
@@ -34,10 +34,6 @@ const setLimitAmountAtomFromProps = atom(null, (_, set, amount) => {
|
|
|
34
34
|
set(currentLimitInputAtom, "from");
|
|
35
35
|
set(setLimitPayAmountAtom, amount);
|
|
36
36
|
});
|
|
37
|
-
const setLimitPriceAmountAtomFromProps = atom(null, (_, set, amount) => {
|
|
38
|
-
const updatedRates = getUpdatedRates(amount, false);
|
|
39
|
-
set(setLimitPriceRatesAtom, updatedRates, true);
|
|
40
|
-
});
|
|
41
37
|
const setLimitReceiveAmountAtom = atom(null, (get, set, receiveAmount) => {
|
|
42
38
|
set(limitReceiveInputAmountAtom, receiveAmount);
|
|
43
39
|
if (get(currentLimitInputAtom) !== "to") return;
|
|
@@ -74,5 +70,5 @@ const toggleLimitPriceReverseAtom = atom(null, (get, set) => {
|
|
|
74
70
|
set(isLimitPriceReversedAtom, !isReversed);
|
|
75
71
|
});
|
|
76
72
|
|
|
77
|
-
export { resetLimitPriceAtom, setLimitAmountAtomFromProps, setLimitPayAmountAtom,
|
|
73
|
+
export { resetLimitPriceAtom, setLimitAmountAtomFromProps, setLimitPayAmountAtom, setLimitPriceRatesAtom, setLimitReceiveAmountAtom, toggleLimitPriceLockAtom, toggleLimitPriceReverseAtom, unlockLimitPriceAtom };
|
|
78
74
|
//# sourceMappingURL=limitInputActionsAtom.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limitInputActionsAtom.js","sources":["../../../../src/core/limit/state/limitInputActionsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport {\n limitPayInputAmountAtom,\n limitReceiveInputAmountAtom,\n limitPriceRatesAtom,\n limitPriceAmountAtom,\n} from \"./limitInputAmountAtom\";\nimport { isLimitPriceLockedAtom } from \"./isLimitPriceLockedAtom\";\nimport Big from \"big.js\";\nimport { currentLimitInputAtom } from \"./currentLimitInputAtom\";\nimport { isLimitPriceReversedAtom } from \"./isLimitPriceReversedAtom\";\nimport {\n calculateReceiveAmount,\n calculatePayAmount,\n calculateRates,\n
|
|
1
|
+
{"version":3,"file":"limitInputActionsAtom.js","sources":["../../../../src/core/limit/state/limitInputActionsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport {\n limitPayInputAmountAtom,\n limitReceiveInputAmountAtom,\n limitPriceRatesAtom,\n limitPriceAmountAtom,\n} from \"./limitInputAmountAtom\";\nimport { isLimitPriceLockedAtom } from \"./isLimitPriceLockedAtom\";\nimport Big from \"big.js\";\nimport { currentLimitInputAtom } from \"./currentLimitInputAtom\";\nimport { isLimitPriceReversedAtom } from \"./isLimitPriceReversedAtom\";\nimport {\n calculateReceiveAmount,\n calculatePayAmount,\n calculateRates,\n} from \"./utils\";\n\nimport { zeroRates } from \"./constants\";\nimport type { PriceRates } from \"../types\";\n\nexport const setLimitPriceRatesAtom = atom(\n null,\n (get, set, priceRates: PriceRates, recalculateReceive: boolean = true) => {\n const isLocked = get(isLimitPriceLockedAtom);\n // ignore updates if price is locked\n if (isLocked) return;\n\n set(limitPriceRatesAtom, priceRates);\n\n const payAmount = get(limitPayInputAmountAtom);\n const payGtZero = Big(payAmount || \"0\").gt(0);\n\n // ignore updates if pay amount is zero,\n // as it would lead to setLimitReceiveAmountAtom(0) anyway\n if (recalculateReceive && payGtZero) {\n const isReversed = get(isLimitPriceReversedAtom);\n const newReceiveAmount = calculateReceiveAmount(\n payAmount,\n priceRates,\n isReversed\n );\n set(setLimitReceiveAmountAtom, newReceiveAmount);\n }\n }\n);\n\nexport const setLimitPayAmountAtom = atom(\n null,\n (get, set, payAmount: string) => {\n set(limitPayInputAmountAtom, payAmount);\n\n // ignore updates that did not come from pay input\n if (get(currentLimitInputAtom) !== \"from\") return;\n\n const priceRates = get(limitPriceRatesAtom);\n const isReversed = get(isLimitPriceReversedAtom);\n\n const limitPriceAmount = get(limitPriceAmountAtom);\n const limitPriceGtZero = Big(limitPriceAmount || \"0\").gt(0);\n // ignore updates if limit price is zero,\n // as it would lead to setLimitReceiveAmountAtom(0) anyway\n if (!limitPriceGtZero) return;\n\n // update receive amount\n const newReceiveAmount = calculateReceiveAmount(\n payAmount,\n priceRates,\n isReversed\n );\n set(setLimitReceiveAmountAtom, newReceiveAmount);\n }\n);\n\nexport const setLimitAmountAtomFromProps = atom(\n null,\n (_, set, amount: string) => {\n set(currentLimitInputAtom, \"from\"); // unblock pay -> receive sync if it was previously blocked\n set(setLimitPayAmountAtom, amount);\n }\n);\n\nexport const setLimitReceiveAmountAtom = atom(\n null,\n (get, set, receiveAmount: string) => {\n set(limitReceiveInputAmountAtom, receiveAmount);\n\n // ignore updates that did not come from receive input\n if (get(currentLimitInputAtom) !== \"to\") return;\n\n const isLocked = get(isLimitPriceLockedAtom);\n const isReversed = get(isLimitPriceReversedAtom);\n\n if (isLocked) {\n // update pay amount if price is locked\n const priceRates = get(limitPriceRatesAtom);\n const newPayAmount = calculatePayAmount(\n receiveAmount,\n priceRates,\n isReversed\n );\n set(setLimitPayAmountAtom, newPayAmount);\n } else {\n // update limit price otherwise\n const payAmount = get(limitPayInputAmountAtom);\n const updatedRates = calculateRates(receiveAmount, payAmount);\n set(setLimitPriceRatesAtom, updatedRates, false);\n }\n }\n);\n\nexport const resetLimitPriceAtom = atom(\n null,\n (get, set, priceRates: PriceRates = zeroRates) => {\n const isLocked = get(isLimitPriceLockedAtom);\n if (isLocked) return;\n\n set(setLimitPriceRatesAtom, priceRates);\n\n const isReversed = get(isLimitPriceReversedAtom);\n const payAmount = get(limitPayInputAmountAtom);\n const newReceiveAmount = calculateReceiveAmount(\n payAmount,\n priceRates,\n isReversed\n );\n set(setLimitReceiveAmountAtom, newReceiveAmount);\n }\n);\n\nexport const unlockLimitPriceAtom = atom(null, (_, set) => {\n set(isLimitPriceLockedAtom, false);\n});\n\nexport const toggleLimitPriceLockAtom = atom(null, (get, set) => {\n const isLocked = get(isLimitPriceLockedAtom);\n set(isLimitPriceLockedAtom, !isLocked);\n});\n\nexport const toggleLimitPriceReverseAtom = atom(null, (get, set) => {\n const isReversed = get(isLimitPriceReversedAtom);\n set(isLimitPriceReversedAtom, !isReversed);\n});\n"],"names":["setLimitPriceRatesAtom","atom","get","set","priceRates","recalculateReceive","isLocked","isLimitPriceLockedAtom","limitPriceRatesAtom","payAmount","limitPayInputAmountAtom","payGtZero","Big","gt","isReversed","isLimitPriceReversedAtom","newReceiveAmount","calculateReceiveAmount","setLimitReceiveAmountAtom","setLimitPayAmountAtom","currentLimitInputAtom","limitPriceAmount","limitPriceAmountAtom","limitPriceGtZero","setLimitAmountAtomFromProps","_","amount","receiveAmount","limitReceiveInputAmountAtom","newPayAmount","calculatePayAmount","updatedRates","calculateRates","resetLimitPriceAtom","zeroRates","unlockLimitPriceAtom","toggleLimitPriceLockAtom","toggleLimitPriceReverseAtom"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectedTokenAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/selectedTokenAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"selectedTokenAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/selectedTokenAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AASlD,eAAO,MAAM,kBAAkB;;CAAyB,CAAC;AACzD,eAAO,MAAM,gBAAgB;;CAAgB,CAAC;AAE9C,eAAO,MAAM,iBAAiB,aAAyC,CAAC;AACxE,eAAO,MAAM,eAAe,yBAAuC,CAAC;AAEpE,eAAO,MAAM,+BAA+B,GAAI,SAAS,gBAAgB,SAsBxE,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { jotaiStore } from '../../
|
|
1
|
+
import { jotaiStore, useAtomValue } from '../../store.js';
|
|
2
2
|
import { wagmiConfig } from '../../../lib/web3/wagmi/config.js';
|
|
3
3
|
import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
|
|
4
|
-
import { atom
|
|
4
|
+
import { atom } from 'jotai';
|
|
5
5
|
|
|
6
6
|
const [defaultTokenFrom] = pickDefaultTokenPair(wagmiConfig.state.chainId, "limit");
|
|
7
7
|
const limitTokenFromAtom = atom(defaultTokenFrom);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/limit/state/selectedTokenAtom.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/
|
|
1
|
+
{"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/limit/state/selectedTokenAtom.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/store\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\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 \"limit\"\n);\n\nexport const limitTokenFromAtom = atom(defaultTokenFrom);\nexport const limitTokenToAtom = atom<Token>();\n\nexport const useLimitTokenFrom = () => useAtomValue(limitTokenFromAtom);\nexport const useLimitTokenTo = () => useAtomValue(limitTokenToAtom);\n\nexport const syncLimitTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const tokenFrom = jotaiStore.get(limitTokenFromAtom);\n const tokenTo = jotaiStore.get(limitTokenToAtom);\n // token will already be set on new chain, the new token may have been the reason for switchChain\n\n // chains are the same? do nothing\n if (\n tokenFrom.network === chainId &&\n // @TODO change to allowed cross chain check when implementing Crosschain Delta Limit Orders,\n // look at syncSwapTokensAfterChainSwitch for implementation\n (!tokenTo || tokenTo.network === chainId)\n )\n return;\n\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n chainId,\n \"limit\"\n );\n\n jotaiStore.set(limitTokenFromAtom, defaultTokenFrom);\n\n if (tokenTo) jotaiStore.set(limitTokenToAtom, defaultTokenTo);\n};\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","limitTokenFromAtom","atom","limitTokenToAtom","useLimitTokenFrom","useAtomValue","useLimitTokenTo","syncLimitTokensAfterChainSwitch","tokenFrom","jotaiStore","get","tokenTo","network","defaultTokenTo","set"],"mappings":";;;;;AAQA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,OACF,CAAA;AAEO,MAAMC,kBAAAA,GAAqBC,KAAKN,gBAAgB;AAChD,MAAMO,mBAAmBD,IAAAA;AAEzB,MAAME,oBAAoBA,MAAA;AAAA,EAAA,OAAMC,aAAaJ,kBAAkB,CAAA;AAAC;AAChE,MAAMK,kBAAkBA,MAAA;AAAA,EAAA,OAAMD,aAAaF,gBAAgB,CAAA;AAAC;AAE5D,MAAMI,+BAAAA,GAAkCA,CAACP,OAAAA,KAA8B;AAC5E,EAAA,MAAMQ,SAAAA,GAAYC,UAAAA,CAAWC,GAAAA,CAAIT,kBAAkB,CAAA;AACnD,EAAA,MAAMU,OAAAA,GAAUF,UAAAA,CAAWC,GAAAA,CAAIP,gBAAgB,CAAA;AAI/C,EAAA,IACEK,UAAUI,OAAAA,KAAYZ,OAAAA;AAAAA;AAAAA,GAGrB,CAACW,OAAAA,IAAWA,OAAAA,CAAQC,OAAAA,KAAYZ,OAAAA,CAAAA,EAEjC;AAEF,EAAA,MAAM,CAACJ,iBAAAA,EAAkBiB,cAAc,CAAA,GAAIhB,oBAAAA,CACzCG,SACA,OACF,CAAA;AAEAS,EAAAA,UAAAA,CAAWK,GAAAA,CAAIb,oBAAoBL,iBAAgB,CAAA;AAEnD,EAAA,IAAIe,OAAAA,EAASF,UAAAA,CAAWK,GAAAA,CAAIX,gBAAAA,EAAkBU,cAAc,CAAA;AAC9D;;;;"}
|
|
@@ -1,13 +1,6 @@
|
|
|
1
1
|
import { TimeUnitObject } from './deadlineAtom';
|
|
2
2
|
import { PriceRates } from '../types';
|
|
3
3
|
export declare function timeUnitToSeconds(timeUnitObj: TimeUnitObject): number;
|
|
4
|
-
export declare function getClosestTimeUnit(timestampS: number): {
|
|
5
|
-
readonly label: "never";
|
|
6
|
-
readonly value: 0;
|
|
7
|
-
} | {
|
|
8
|
-
label: "minutes" | "days" | "hours" | "months";
|
|
9
|
-
value: number;
|
|
10
|
-
};
|
|
11
4
|
export declare function calculateReceiveAmount(payAmount: string, priceRates: PriceRates, isReversed: boolean): string;
|
|
12
5
|
export declare function calculatePayAmount(receiveAmount: string, priceRates: PriceRates, isReversed: boolean): string;
|
|
13
6
|
export declare function calculateRates(receiveAmount: string, payAmount: string): PriceRates;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,cAAc,UAa5D;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/core/limit/state/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,cAAc,UAa5D;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,OAAO,UAcpB;AAED,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,OAAO,UAcpB;AAED,wBAAgB,cAAc,CAC5B,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,GAChB,UAAU,CAYZ;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,OAAO,GAClB,UAAU,CAWZ"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Big from 'big.js';
|
|
2
|
-
import {
|
|
2
|
+
import { zeroRates } from './constants.js';
|
|
3
3
|
|
|
4
4
|
function timeUnitToSeconds(timeUnitObj) {
|
|
5
5
|
switch (timeUnitObj.label) {
|
|
@@ -15,36 +15,6 @@ function timeUnitToSeconds(timeUnitObj) {
|
|
|
15
15
|
return 0;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
const units = [{
|
|
19
|
-
label: "months",
|
|
20
|
-
ms: 30 * 24 * 60 * 60 * 1e3
|
|
21
|
-
}, {
|
|
22
|
-
label: "days",
|
|
23
|
-
ms: 24 * 60 * 60 * 1e3
|
|
24
|
-
}, {
|
|
25
|
-
label: "hours",
|
|
26
|
-
ms: 60 * 60 * 1e3
|
|
27
|
-
}, {
|
|
28
|
-
label: "minutes",
|
|
29
|
-
ms: 60 * 1e3
|
|
30
|
-
}];
|
|
31
|
-
function getClosestTimeUnit(timestampS) {
|
|
32
|
-
if (timestampS <= 0) return neverTimeUnit;
|
|
33
|
-
const timestampMs = timestampS * 1e3;
|
|
34
|
-
const now = Date.now();
|
|
35
|
-
if (timestampMs <= now) return neverTimeUnit;
|
|
36
|
-
const diffMs = timestampMs - now;
|
|
37
|
-
for (const unit of units) {
|
|
38
|
-
const value = Math.floor(diffMs / unit.ms);
|
|
39
|
-
if (value > 0) {
|
|
40
|
-
return {
|
|
41
|
-
label: unit.label,
|
|
42
|
-
value
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
return neverTimeUnit;
|
|
47
|
-
}
|
|
48
18
|
function calculateReceiveAmount(payAmount, priceRates, isReversed) {
|
|
49
19
|
const pay = Big(payAmount || "0");
|
|
50
20
|
if (isReversed) {
|
|
@@ -92,5 +62,5 @@ function getUpdatedRates(value, isReversed) {
|
|
|
92
62
|
return zeroRates;
|
|
93
63
|
}
|
|
94
64
|
|
|
95
|
-
export { calculatePayAmount, calculateRates, calculateReceiveAmount,
|
|
65
|
+
export { calculatePayAmount, calculateRates, calculateReceiveAmount, getUpdatedRates, timeUnitToSeconds };
|
|
96
66
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../src/core/limit/state/utils.ts"],"sourcesContent":["import Big from \"big.js\";\nimport type { TimeUnitObject } from \"./deadlineAtom\";\nimport type { PriceRates } from \"../types\";\nimport {
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/core/limit/state/utils.ts"],"sourcesContent":["import Big from \"big.js\";\nimport type { TimeUnitObject } from \"./deadlineAtom\";\nimport type { PriceRates } from \"../types\";\nimport { zeroRates } from \"./constants\";\n\nexport function timeUnitToSeconds(timeUnitObj: TimeUnitObject) {\n switch (timeUnitObj.label) {\n case \"minutes\":\n return timeUnitObj.value * 60;\n case \"hours\":\n return timeUnitObj.value * 60 * 60;\n case \"days\":\n return timeUnitObj.value * 60 * 60 * 24;\n case \"months\":\n return timeUnitObj.value * 60 * 60 * 24 * 30;\n default:\n return 0;\n }\n}\n\nexport function calculateReceiveAmount(\n payAmount: string,\n priceRates: PriceRates,\n isReversed: boolean\n) {\n const pay = Big(payAmount || \"0\");\n\n if (isReversed) {\n // price = from/to → receive = pay / price\n const price = Big(priceRates.rateReversed || \"0\");\n if (price.eq(0)) return \"0\";\n return pay.div(price).toFixed();\n }\n\n const price = Big(priceRates.rate || \"0\");\n // normal: price = to/from → receive = pay * price\n return pay.mul(price).toFixed();\n}\n\nexport function calculatePayAmount(\n receiveAmount: string,\n priceRates: PriceRates,\n isReversed: boolean\n) {\n const receive = Big(receiveAmount || \"0\");\n\n if (isReversed) {\n // price = from/to → pay = receive * price\n const price = Big(priceRates.rateReversed || \"0\");\n return receive.mul(price).toFixed();\n }\n\n // normal: pay = receive / price\n const price = Big(priceRates.rate || \"0\");\n if (price.eq(0)) return \"0\";\n return receive.div(price).toFixed();\n}\n\nexport function calculateRates(\n receiveAmount: string,\n payAmount: string\n): PriceRates {\n const receive = Big(receiveAmount || \"0\");\n const pay = Big(payAmount || \"0\");\n\n if (pay.eq(0) || receive.eq(0)) return zeroRates;\n\n // normal: price = to/from → price = receive / pay\n const rate = receive.div(pay).toFixed();\n // reversed: price = from/to → price = pay / receive\n const rateReversed = pay.div(receive).toFixed();\n\n return { rate, rateReversed };\n}\n\nexport function getUpdatedRates(\n value: string,\n isReversed: boolean\n): PriceRates {\n const bigPrice = Big(value || 0);\n if (!bigPrice.eq(0)) {\n const rate = bigPrice.toFixed();\n const rateReversed = Big(1).div(bigPrice).toFixed();\n\n return isReversed\n ? { rate: rateReversed, rateReversed: rate }\n : { rate, rateReversed };\n }\n return zeroRates;\n}\n"],"names":["timeUnitToSeconds","timeUnitObj","label","value","calculateReceiveAmount","payAmount","priceRates","isReversed","pay","Big","price","rateReversed","eq","div","toFixed","rate","mul","calculatePayAmount","receiveAmount","receive","calculateRates","zeroRates","getUpdatedRates","bigPrice"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { d as distExports } from '../../_virtual/index.js';
|
|
3
3
|
import { SwapRate } from '../../components/widget/SwapRate/SwapRate.js';
|
|
4
4
|
import { useWidgetTokens } from '../inputs/state/common.js';
|
|
5
|
-
import { useAtomValue } from '
|
|
5
|
+
import { useAtomValue } from '../store.js';
|
|
6
6
|
import { limitPayInputAmountWeiAtom, limitReceiveInputAmountWeiAtom } from './state/limitInputAmountAtom.js';
|
|
7
7
|
import Big from 'big.js';
|
|
8
8
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitDetailsListProps.js","sources":["../../../src/core/limit/useLimitDetailsListProps.tsx"],"sourcesContent":["import type {\n DetailWithValue,\n DetailWithValueListExpandableProps,\n} from \"@/components/widget/Details/types\";\nimport { SwapRate } from \"@/components/widget/SwapRate/SwapRate\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useAtomValue } from \"
|
|
1
|
+
{"version":3,"file":"useLimitDetailsListProps.js","sources":["../../../src/core/limit/useLimitDetailsListProps.tsx"],"sourcesContent":["import type {\n DetailWithValue,\n DetailWithValueListExpandableProps,\n} from \"@/components/widget/Details/types\";\nimport { SwapRate } from \"@/components/widget/SwapRate/SwapRate\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useAtomValue } from \"@/core/store\";\n\nimport {\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountWeiAtom,\n} from \"./state/limitInputAmountAtom\";\nimport Big from \"big.js\";\n\nexport const useLimitDetailsListProps =\n (): DetailWithValueListExpandableProps | null => {\n const { tokenFrom, tokenTo } = useWidgetTokens(\"limit\");\n\n const srcAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n const destAmountWei = useAtomValue(limitReceiveInputAmountWeiAtom);\n\n if (\n !tokenTo ||\n destAmountWei === undefined ||\n Big(srcAmountWei).eq(0) ||\n Big(destAmountWei).eq(0)\n ) {\n return null;\n }\n\n const details: DetailWithValue[] = [\n {\n title: \"Network Fees\",\n value: \"🎉 Free\",\n },\n ];\n\n return {\n alwaysOpen: true,\n trigger: (\n <SwapRate\n srcToken={tokenFrom}\n destToken={tokenTo}\n srcAmountWei={srcAmountWei}\n destAmountWei={destAmountWei}\n />\n ),\n details,\n classes: {\n root: \"mt-4\",\n trigger: \"cursor-default\",\n },\n };\n };\n"],"names":["useLimitDetailsListProps","$","_c","tokenFrom","tokenTo","useWidgetTokens","srcAmountWei","useAtomValue","limitPayInputAmountWeiAtom","destAmountWei","limitReceiveInputAmountWeiAtom","undefined","Big","eq","t0","Symbol","for","title","value","details","t1","t2","root","trigger","t3","alwaysOpen","classes"],"mappings":";;;;;;;;AAcO,MAAMA,2BACXA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAA;AAAA,IAAAC,SAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAA+BC,gBAAgB,OAAO,CAAA;AAEtD,EAAA,MAAAC,YAAAA,GAAqBC,aAAaC,0BAA0B,CAAA;AAC5D,EAAA,MAAAC,aAAAA,GAAsBF,aAAaG,8BAA8B,CAAA;AAEjE,EAAA,IACE,CAACN,OAAAA,IACDK,aAAAA,KAAkBE,MAAAA,IAClBC,IAAIN,YAAY,CAAA,CAACO,EAAAA,CAAI,CAAC,KACtBD,GAAAA,CAAIH,aAAa,CAAA,CAACI,EAAAA,CAAI,CAAC,CAAA,EAAC;AAAA,IAAA,OAEjB,IAAA;AAAA,EAAI;AACZ,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAc,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAEkCF,IAAAA,EAAAA,GAAA,CACjC;AAAA,MAAAG,KAAAA,EACS,cAAA;AAAA,MAAcC,KAAAA,EACd;AAAA,KACR,CAAA;AACFjB,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAkB,OAAAA,GAAmCL,EAAAA;AAKjC,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAnB,CAAAA,CAAA,CAAA,CAAA,KAAAQ,aAAAA,IAAAR,EAAA,CAAA,CAAA,KAAAK,YAAAA,IAAAL,CAAAA,CAAA,CAAA,CAAA,KAAAE,SAAAA,IAAAF,CAAAA,QAAAG,OAAAA,EAAA;AAKEgB,IAAAA,EAAAA,uBAAC,QAAA,EAAA,EACWjB,QAAAA,EAAAA,WACCC,SAAAA,EAAAA,OAAAA,EACGE,cACCG,aAAAA,EAAa,CAAA;AAC5BR,IAAAA,CAAAA,MAAAQ,aAAAA;AAAAR,IAAAA,CAAAA,MAAAK,YAAAA;AAAAL,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAmB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAoB,EAAAA;AAAA,EAAA,IAAApB,EAAA,CAAA,CAAA,KAAAc,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGKK,IAAAA,EAAAA,GAAA;AAAA,MAAAC,IAAAA,EACD,MAAA;AAAA,MAAMC,OAAAA,EACH;AAAA,KACX;AAACtB,IAAAA,CAAAA,MAAAoB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAuB,EAAAA;AAAA,EAAA,IAAAvB,CAAAA,QAAAmB,EAAAA,EAAA;AAdII,IAAAA,EAAAA,GAAA;AAAA,MAAAC,UAAAA,EACO,IAAA;AAAA,MAAIF,OAAAA,EAEdH,EAAAA;AAAAA,MAKED,OAAAA;AAAAA,MAAAO,OAAAA,EAGKL;AAAAA,KAIX;AAACpB,IAAAA,CAAAA,MAAAmB,EAAAA;AAAAnB,IAAAA,CAAAA,MAAAuB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAvB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAfMuB,EAAAA;AAeN;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { d as distExports } from '../../_virtual/index.js';
|
|
2
2
|
import { getPercentDifference } from '../../lib/utils/price.js';
|
|
3
|
-
import { useAtomValue } from '
|
|
3
|
+
import { useAtomValue } from '../store.js';
|
|
4
4
|
import { limitPriceRatesAtom } from './state/limitInputAmountAtom.js';
|
|
5
5
|
import { useLimitRate } from './useLimitRate.js';
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitPriceDifference.js","sources":["../../../src/core/limit/useLimitPriceDifference.ts"],"sourcesContent":["import { getPercentDifference } from \"@/lib/utils/price\";\nimport { useAtomValue } from \"
|
|
1
|
+
{"version":3,"file":"useLimitPriceDifference.js","sources":["../../../src/core/limit/useLimitPriceDifference.ts"],"sourcesContent":["import { getPercentDifference } from \"@/lib/utils/price\";\nimport { useAtomValue } from \"@/core/store\";\nimport { limitPriceRatesAtom } from \"./state/limitInputAmountAtom\";\nimport { useLimitRate } from \"./useLimitRate\";\nimport type { UseLimitPriceDiffResult } from \"./types\";\n\nexport const useLimitPriceDifference = (): UseLimitPriceDiffResult => {\n const limitRateResult = useLimitRate(\"limit\");\n\n const userDefinedRate = Number(useAtomValue(limitPriceRatesAtom).rate);\n\n if (!userDefinedRate || !limitRateResult.rates?.rate)\n return { priceDiff: 0, ...limitRateResult };\n\n const marketRate = Number(limitRateResult.rates.rate) || 0; // guard against NaN\n // how much % the limit price rate is different from the market rate\n const priceDiff = getPercentDifference(userDefinedRate, marketRate);\n\n return { priceDiff, ...limitRateResult };\n};\n"],"names":["useLimitPriceDifference","$","_c","limitRateResult","useLimitRate","userDefinedRate","Number","useAtomValue","limitPriceRatesAtom","rate","rates","t0","priceDiff","marketRate","getPercentDifference","t1"],"mappings":";;;;;;AAMO,MAAMA,0BAA0BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACrC,EAAA,MAAAC,eAAAA,GAAwBC,aAAa,OAAO,CAAA;AAE5C,EAAA,MAAAC,eAAAA,GAAwBC,MAAAA,CAAOC,YAAAA,CAAaC,mBAAmB,EAACC,IAAK,CAAA;AAErE,EAAA,IAAI,CAACJ,eAAAA,IAAD,CAAqBF,eAAAA,CAAeO,OAAYD,IAAAA,EAAA;AAAA,IAAA,IAAAE,GAAAA;AAAA,IAAA,IAAAV,CAAAA,QAAAE,eAAAA,EAAA;AAC3CQ,MAAAA,GAAAA,GAAA;AAAA,QAAAC,SAAAA,EAAa,CAAA;AAAA,QAAC,GAAKT;AAAAA,OAAgB;AAACF,MAAAA,CAAAA,MAAAE,eAAAA;AAAAF,MAAAA,CAAAA,MAAAU,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,IAAA;AAAA,IAAA,OAApCU,GAAAA;AAAAA,EAAoC;AAE7C,EAAA,MAAAE,UAAAA,GAAmBP,MAAAA,CAAOH,eAAAA,CAAeO,KAAAA,CAAMD,IAAU,CAAA,IAAtC,CAAA;AAAwC,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAV,EAAA,CAAA,CAAA,KAAAY,cAAAZ,CAAAA,QAAAI,eAAAA,EAAA;AAEzCM,IAAAA,EAAAA,GAAAG,oBAAAA,CAAqBT,iBAAiBQ,UAAU,CAAA;AAACZ,IAAAA,CAAAA,MAAAY,UAAAA;AAAAZ,IAAAA,CAAAA,MAAAI,eAAAA;AAAAJ,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAAnE,EAAA,MAAAW,SAAAA,GAAkBD,EAAAA;AAAkD,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAd,EAAA,CAAA,CAAA,KAAAE,mBAAAF,CAAAA,QAAAW,SAAAA,EAAA;AAE7DG,IAAAA,EAAAA,GAAA;AAAA,MAAAH,SAAAA;AAAAA,MAAA,GAAgBT;AAAAA,KAAgB;AAACF,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAW,SAAAA;AAAAX,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAjCc,EAAAA;AAAiC;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { d as distExports } from '../../_virtual/index.js';
|
|
2
|
-
import { useAtomValue, useSetAtom, useAtom } from '
|
|
2
|
+
import { useAtomValue, useSetAtom, useAtom } from '../store.js';
|
|
3
3
|
import { useEffect } from 'react';
|
|
4
4
|
import { useWidgetTokens } from '../inputs/state/common.js';
|
|
5
5
|
import { useLogger } from '../logger.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitPriceInputProps.js","sources":["../../../src/core/limit/useLimitPriceInputProps.ts"],"sourcesContent":["import type { PriceInputProps } from \"@/components/widget/LimitPriceInput/types\";\nimport { useAtomValue, useSetAtom, useAtom } from \"
|
|
1
|
+
{"version":3,"file":"useLimitPriceInputProps.js","sources":["../../../src/core/limit/useLimitPriceInputProps.ts"],"sourcesContent":["import type { PriceInputProps } from \"@/components/widget/LimitPriceInput/types\";\nimport { useAtomValue, useSetAtom, useAtom } from \"@/core/store\";\nimport { useEffect } from \"react\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useLogger } from \"../logger\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport { isLimitPriceLockedAtom } from \"./state/isLimitPriceLockedAtom\";\nimport { isLimitPriceReversedAtom } from \"./state/isLimitPriceReversedAtom\";\nimport {\n setLimitPriceRatesAtom,\n toggleLimitPriceLockAtom,\n toggleLimitPriceReverseAtom,\n resetLimitPriceAtom,\n} from \"./state/limitInputActionsAtom\";\nimport { limitPriceAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { useLimitPriceDifference } from \"./useLimitPriceDifference\";\nimport { getUpdatedRates } from \"./state/utils\";\n\nexport const useLimitPriceInputProps = (): PriceInputProps => {\n const logger = useLogger(\"LimitPriceInput\");\n const { tokenFrom, tokenTo } = useWidgetTokens(\"limit\");\n\n const isLocked = useAtomValue(isLimitPriceLockedAtom);\n const isReversed = useAtomValue(isLimitPriceReversedAtom);\n const limitPriceAmount = useAtomValue(limitPriceAmountAtom);\n\n const setPriceRates = useSetAtom(setLimitPriceRatesAtom);\n const togglePriceLock = useSetAtom(toggleLimitPriceLockAtom);\n const togglePriceReverse = useSetAtom(toggleLimitPriceReverseAtom);\n const resetPrice = useSetAtom(resetLimitPriceAtom);\n const [currentLimitInput, setCurrentLimitInput] = useAtom(\n currentLimitInputAtom\n );\n\n const { rates, isLoading, priceDiff } = useLimitPriceDifference();\n\n useEffect(() => {\n if (rates) {\n setPriceRates(rates);\n }\n }, [setPriceRates, rates]);\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange\", values);\n\n const updatedRates = getUpdatedRates(values.value, isReversed);\n const recalculateReceive = currentLimitInput === \"limit\";\n setPriceRates(updatedRates, recalculateReceive);\n };\n\n const drivingToken = isReversed ? tokenFrom : tokenTo;\n\n return {\n type: \"limit\",\n drivingToken,\n amount: limitPriceAmount,\n isLoading,\n isLocked,\n isReversed,\n priceDiff,\n onAmountChange,\n onReset: () => resetPrice(rates),\n onToggleLock: () => togglePriceLock(),\n onToggleReverse: () => togglePriceReverse(),\n onFocus: () => setCurrentLimitInput(\"limit\"),\n };\n};\n"],"names":["useLimitPriceInputProps","$","_c","logger","useLogger","tokenFrom","tokenTo","useWidgetTokens","isLocked","useAtomValue","isLimitPriceLockedAtom","isReversed","isLimitPriceReversedAtom","limitPriceAmount","limitPriceAmountAtom","setPriceRates","useSetAtom","setLimitPriceRatesAtom","togglePriceLock","toggleLimitPriceLockAtom","togglePriceReverse","toggleLimitPriceReverseAtom","resetPrice","resetLimitPriceAtom","currentLimitInput","setCurrentLimitInput","useAtom","currentLimitInputAtom","rates","isLoading","priceDiff","useLimitPriceDifference","t0","t1","useEffect","t2","values","log","updatedRates","getUpdatedRates","value","recalculateReceive","onAmountChange","drivingToken","t3","t4","t5","t6","t7","type","amount","onReset","onToggleLock","onToggleReverse","onFocus"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { useTokenPrice } from '../../hooks/tokens/prices/useTokenPrices.js';
|
|
|
5
5
|
import Big from 'big.js';
|
|
6
6
|
import { formatUnits, parseUnits } from 'viem';
|
|
7
7
|
import { useWidgetTokens, tradeModeToTokenAtoms } from '../inputs/state/common.js';
|
|
8
|
-
import { useAtomValue } from '
|
|
8
|
+
import { useAtomValue } from '../store.js';
|
|
9
9
|
import { useMemo } from 'react';
|
|
10
10
|
|
|
11
11
|
const PRICE_REFETCH_INTERVAL = 6e4 * 5;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitRate.js","sources":["../../../src/core/limit/useLimitRate.ts"],"sourcesContent":["import { useMarketPriceQuery } from \"@/hooks/swap/prices/market/queries/useMarketPriceQuery\";\nimport {\n usePricesParams,\n type FetchPriceParams,\n} from \"@/hooks/swap/prices/usePricesParams\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport type { UseLimitRateResult } from \"./types\";\nimport { useAtomValue } from \"
|
|
1
|
+
{"version":3,"file":"useLimitRate.js","sources":["../../../src/core/limit/useLimitRate.ts"],"sourcesContent":["import { useMarketPriceQuery } from \"@/hooks/swap/prices/market/queries/useMarketPriceQuery\";\nimport {\n usePricesParams,\n type FetchPriceParams,\n} from \"@/hooks/swap/prices/usePricesParams\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport type { UseLimitRateResult } from \"./types\";\nimport { useAtomValue } from \"@/core/store\";\nimport { tradeModeToTokenAtoms } from \"../inputs/state/common\";\nimport { useMemo } from \"react\";\n\n// 5 min, so as not to change limit price in front of the user too often\nconst PRICE_REFETCH_INTERVAL = 60_000 * 5;\n\nconst useSwapPriceForLimit = ({\n enabled = true,\n refetchInterval = PRICE_REFETCH_INTERVAL,\n tradeMode,\n}: {\n enabled?: boolean;\n refetchInterval?: number;\n tradeMode: \"limit\" | \"otc\";\n}) => {\n const tokenFrom = useAtomValue(\n tradeModeToTokenAtoms[tradeMode].tokenFromAtom\n );\n const { priceParams, chainId } = usePricesParams(tradeMode);\n\n const priceParamsWithAmount: FetchPriceParams = {\n ...priceParams,\n amount: parseUnits(\"1\", tokenFrom.decimals).toString(),\n side: \"SELL\" as const,\n ignoreBadUsdPrice: true,\n };\n\n // @TODO: delta price return quote for less tokens than market price with srcAmount=1,\n // but maybe we should increase srcAmount and use delta prices instead, need to test.\n const { result: marketPriceQuery } = useMarketPriceQuery({\n priceParams: priceParamsWithAmount,\n chainId,\n timeout: 5000,\n query: {\n enabled,\n refetchInterval,\n retry: false,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n },\n });\n\n return {\n price: marketPriceQuery.data,\n isLoading: marketPriceQuery.isLoading,\n };\n};\n\n// define how many tokenTo units one tokenFrom (tokenTo if reversed) unit costs, eg 1 ETH = 3000 USDC\nexport const useLimitRate = (\n tradeMode: \"limit\" | \"otc\"\n): UseLimitRateResult => {\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const { data: tokenFromPrice, isLoading: isTokenFromPriceLoading } =\n useTokenPrice(tokenFrom, { refetchInterval: PRICE_REFETCH_INTERVAL });\n const { data: tokenToPrice, isLoading: isTokenToPriceLoading } =\n useTokenPrice(tokenTo, { refetchInterval: PRICE_REFETCH_INTERVAL });\n\n const areFiatPricesLoading = isTokenFromPriceLoading || isTokenToPriceLoading;\n\n const fiatPricesAvailable = !!(tokenFromPrice && tokenToPrice);\n const fetchSwapPrice = !fiatPricesAvailable && !areFiatPricesLoading;\n\n const { price: swapPrice, isLoading: isSwapPriceLoading } =\n useSwapPriceForLimit({ enabled: fetchSwapPrice, tradeMode });\n\n const isLoading = areFiatPricesLoading || isSwapPriceLoading;\n\n return useMemo(() => {\n if (!tokenTo) {\n return { isLoading };\n }\n\n let rate: string | undefined = undefined;\n let rateReversed: string | undefined = undefined;\n if (fiatPricesAvailable) {\n rate = Big(tokenFromPrice.price).div(tokenToPrice.price).toFixed();\n rateReversed = Big(tokenToPrice.price)\n .div(tokenFromPrice.price)\n .toFixed();\n } else if (swapPrice) {\n const srcUnits = formatUnits(\n BigInt(swapPrice.srcAmount),\n tokenFrom.decimals\n );\n const destUnits = formatUnits(\n BigInt(swapPrice.destAmount),\n tokenTo.decimals\n );\n\n rate = Big(destUnits).div(srcUnits).toFixed();\n rateReversed = Big(srcUnits).div(destUnits).toFixed();\n }\n\n if (!rate || !rateReversed) {\n return { isLoading };\n }\n\n return {\n rates: { rate, rateReversed },\n isLoading,\n };\n }, [\n fiatPricesAvailable,\n isLoading,\n swapPrice,\n tokenFrom.decimals,\n tokenFromPrice?.price,\n tokenTo,\n tokenToPrice?.price,\n ]);\n};\n"],"names":["PRICE_REFETCH_INTERVAL","useSwapPriceForLimit","t0","$","_c","enabled","t1","refetchInterval","t2","tradeMode","undefined","tokenFrom","useAtomValue","tradeModeToTokenAtoms","tokenFromAtom","priceParams","chainId","usePricesParams","t3","decimals","parseUnits","toString","t4","amount","side","ignoreBadUsdPrice","priceParamsWithAmount","t5","retry","refetchOnWindowFocus","refetchOnMount","t6","timeout","query","result","marketPriceQuery","useMarketPriceQuery","t7","data","isLoading","price","useLimitRate","tokenTo","useWidgetTokens","tokenFromPrice","isTokenFromPriceLoading","useTokenPrice","tokenToPrice","isTokenToPriceLoading","areFiatPricesLoading","fiatPricesAvailable","fetchSwapPrice","swapPrice","isSwapPriceLoading","useMemo","rate","rateReversed","Big","div","toFixed","srcUnits","formatUnits","BigInt","srcAmount","destUnits","destAmount","rates"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { d as distExports } from '../../_virtual/index.js';
|
|
3
|
-
import { useAtomValue, useSetAtom } from '
|
|
3
|
+
import { useAtomValue, useSetAtom } from '../store.js';
|
|
4
4
|
import { setLimitPayAmountAtom } from './state/limitInputActionsAtom.js';
|
|
5
5
|
import { useLogger } from '../logger.js';
|
|
6
6
|
import { limitPayInputAmountWeiAtom, limitPayInputAmountAtom } from './state/limitInputAmountAtom.js';
|