@velora-dex/widget 0.2.5-dev.6 → 0.2.5-dev.7
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/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js +43 -42
- package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.d.ts +2 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.js +30 -32
- package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +1 -3
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +114 -97
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +3 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js +17 -14
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +1 -2
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.js +16 -17
- package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
- package/dist/components/widget/OrderExpiryInput/index.d.ts.map +1 -1
- package/dist/components/widget/OrderExpiryInput/index.js +76 -73
- package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +3 -0
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/types.d.ts +2 -1
- package/dist/components/widget/ReceiverAddress/types.d.ts.map +1 -1
- package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -1
- package/dist/components/widget/Screen/GenericScreen.js +9 -8
- package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
- package/dist/components/widget/Screen/ScreenContainer.d.ts.map +1 -1
- package/dist/components/widget/Screen/ScreenContainer.js +7 -31
- package/dist/components/widget/Screen/ScreenContainer.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.d.ts.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js +5 -0
- package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +3 -2
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +3 -3
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.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/ButtonGroup.d.ts +12 -0
- package/dist/configurator/components/common/ButtonGroup.d.ts.map +1 -0
- package/dist/core/LimitOrderButton.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.js +49 -23
- package/dist/core/LimitOrderButton.js.map +1 -1
- package/dist/core/Updaters.d.ts.map +1 -1
- package/dist/core/Updaters.js +22 -1
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/across/isCrosshcainPossible.d.ts +10 -0
- package/dist/core/across/isCrosshcainPossible.d.ts.map +1 -0
- package/dist/core/across/isCrosshcainPossible.js +41 -0
- package/dist/core/across/isCrosshcainPossible.js.map +1 -0
- package/dist/core/across/utils.d.ts +7 -3
- package/dist/core/across/utils.d.ts.map +1 -1
- package/dist/core/across/utils.js +10 -7
- package/dist/core/across/utils.js.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js +56 -33
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +72 -17
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +76 -66
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/state/common.d.ts +15 -3
- package/dist/core/inputs/state/common.d.ts.map +1 -1
- package/dist/core/inputs/state/common.js +51 -12
- package/dist/core/inputs/state/common.js.map +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.js +33 -44
- package/dist/core/inputs/state/selectedTokenActionsAtom.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 +85 -21
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/inputs/state/types.d.ts +9 -1
- package/dist/core/inputs/state/types.d.ts.map +1 -1
- package/dist/core/limit/state/deadlineAtom.d.ts +10 -2
- package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
- package/dist/core/limit/state/deadlineAtom.js +15 -8
- package/dist/core/limit/state/deadlineAtom.js.map +1 -1
- package/dist/core/limit/state/isCrosschainAtom.d.ts +3 -0
- package/dist/core/limit/state/isCrosschainAtom.d.ts.map +1 -0
- package/dist/core/limit/state/isCrosschainAtom.js +13 -0
- package/dist/core/limit/state/isCrosschainAtom.js.map +1 -0
- package/dist/core/limit/state/limitInputActionsAtom.d.ts +4 -1
- package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
- package/dist/core/limit/state/limitInputActionsAtom.js +6 -2
- package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
- package/dist/core/limit/state/limitInputAmountAtom.js +1 -1
- package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
- package/dist/core/limit/state/limitTokenAtoms.d.ts +10 -0
- package/dist/core/limit/state/limitTokenAtoms.d.ts.map +1 -0
- package/dist/core/limit/state/limitTokenAtoms.js +17 -0
- package/dist/core/limit/state/limitTokenAtoms.js.map +1 -0
- package/dist/core/limit/state/receiverAddressAtom.d.ts +7 -0
- package/dist/core/limit/state/receiverAddressAtom.d.ts.map +1 -0
- package/dist/core/limit/state/receiverAddressAtom.js +40 -0
- package/dist/core/limit/state/receiverAddressAtom.js.map +1 -0
- package/dist/core/limit/state/selectedTokenActionsAtom.d.ts.map +1 -1
- package/dist/core/limit/state/selectedTokenActionsAtom.js +94 -18
- package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
- package/dist/core/limit/state/selectedTokenAtom.d.ts +0 -9
- package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
- package/dist/core/limit/state/selectedTokenAtom.js +53 -21
- package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/limit/state/utils.d.ts +9 -1
- package/dist/core/limit/state/utils.d.ts.map +1 -1
- package/dist/core/limit/state/utils.js +44 -2
- package/dist/core/limit/state/utils.js.map +1 -1
- package/dist/core/limit/useLimitRate.d.ts +9 -0
- package/dist/core/limit/useLimitRate.d.ts.map +1 -1
- package/dist/core/limit/useLimitRate.js +145 -8
- 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.d.ts.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.js +132 -72
- package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
- package/dist/core/otc/state/deadlineAtom.d.ts +8 -3
- package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
- package/dist/core/otc/state/deadlineAtom.js +16 -10
- package/dist/core/otc/state/deadlineAtom.js.map +1 -1
- package/dist/core/otc/state/otcInputActionsAtom.d.ts +4 -1
- package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
- package/dist/core/otc/state/otcInputActionsAtom.js +6 -2
- package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
- package/dist/core/screen/hooks/useOnClickOutside.d.ts +2 -0
- package/dist/core/screen/hooks/useOnClickOutside.d.ts.map +1 -0
- package/dist/core/screen/hooks/useOnClickOutside.js +30 -0
- package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -0
- package/dist/core/screen/screenByType.d.ts +1 -3
- package/dist/core/screen/screenByType.d.ts.map +1 -1
- package/dist/core/state/chainToAtom.d.ts +2 -0
- package/dist/core/state/chainToAtom.d.ts.map +1 -1
- package/dist/core/state/chainToAtom.js +37 -7
- package/dist/core/state/chainToAtom.js.map +1 -1
- package/dist/core/state/configEffectAtom.d.ts +0 -3
- package/dist/core/state/configEffectAtom.d.ts.map +1 -1
- package/dist/core/state/configEffectAtom.js +49 -37
- package/dist/core/state/configEffectAtom.js.map +1 -1
- package/dist/core/state/enabledChainsAtom.d.ts +3 -0
- package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
- package/dist/core/state/enabledChainsAtom.js.map +1 -1
- package/dist/core/state/getSelectableDestChains.d.ts +8 -0
- package/dist/core/state/getSelectableDestChains.d.ts.map +1 -0
- package/dist/core/state/getSelectableDestChains.js +34 -0
- package/dist/core/state/getSelectableDestChains.js.map +1 -0
- package/dist/events/getters/limit.d.ts.map +1 -1
- package/dist/events/getters/limit.js +5 -2
- package/dist/events/getters/limit.js.map +1 -1
- package/dist/events/hooks/useOnPriceUpdates.d.ts.map +1 -1
- package/dist/events/hooks/useOnPriceUpdates.js +37 -25
- package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
- package/dist/events/types/formInput.d.ts +1 -1
- package/dist/events/types/formInput.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts +2 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js +24 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts +6 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js +9 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts +4 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js +12 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +19 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +4 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js +81 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +3 -0
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +2 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.js +8 -12
- package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -0
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +54 -21
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.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/useAllTokensWithFilter.d.ts +3 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.js +25 -22
- package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.d.ts +3 -1
- package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.js +36 -25
- package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
- package/dist/hooks/useAvailableCrosses.d.ts +7 -2
- package/dist/hooks/useAvailableCrosses.d.ts.map +1 -1
- package/dist/hooks/useAvailableCrosses.js +39 -25
- package/dist/hooks/useAvailableCrosses.js.map +1 -1
- package/dist/hooks/useBridgeInfo.d.ts +4 -1
- package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
- package/dist/hooks/useBridgeInfo.js +26 -11
- package/dist/hooks/useBridgeInfo.js.map +1 -1
- package/dist/hooks/useClickOutside.d.ts +1 -1
- package/dist/hooks/useClickOutside.d.ts.map +1 -1
- package/dist/hooks/useClickOutside.js +27 -13
- package/dist/hooks/useClickOutside.js.map +1 -1
- package/dist/hooks/useIsCrosschainPossible.d.ts +3 -1
- package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
- package/dist/hooks/useIsCrosschainPossible.js +33 -22
- package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
- package/dist/hooks/useSelectableDestChains.d.ts +5 -1
- package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
- package/dist/hooks/useSelectableDestChains.js +42 -36
- package/dist/hooks/useSelectableDestChains.js.map +1 -1
- package/dist/styles.css +3 -0
- package/package.json +2 -2
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts +0 -15
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts.map +0 -1
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js +0 -92
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitTokenFromInputProps.js","sources":["../../../src/core/limit/useLimitTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { setLimitPayAmountAtom } from \"./state/limitInputActionsAtom\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type {\n TokenInputAmountProps,\n TokenInputExtraProps,\n} from \"../inputs/hooks/types\";\nimport { useLogger } from \"../logger\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n} from \"./state/limitInputAmountAtom\";\nimport { useChainId } from \"wagmi\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { useIsInsufficientBalanceToFillLimitOrder } from \"@/hooks/tokens/balances/useIsLimitOrderInsufficientBalance\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport Big from \"big.js\";\nimport { WRAP_ETH_GAS_LIMIT_INACCURATE } from \"@/lib/constants\";\nimport { useUnsupportedLimitChain } from \"./useLimitNotSupported\";\nimport { selectLimitTokenFromAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom } from \"./state/selectedTokenAtom\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { getInsufficientBalanceToFillOrderMessage } from \"@/lib/utils/delta\";\nimport { useDeltaOrderRequiredAllowance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport { useEnabledSrcChainsWithDelta } from \"../state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\n\nconst useLimitTokenFromAmountProps = (): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"Limit::TokenFrom::AmountProps\");\n const tokenFrom = useLimitTokenFrom();\n\n const amountValue = useAtomValue(limitPayInputAmountAtom);\n const setAmountValue = useSetAtom(setLimitPayAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const spenderContractType = \"ParaswapDelta\";\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const { combinedAllowance: srcCombinedAllowance } =\n useDeltaOrderRequiredAllowance({\n tokenAddress: tokenFrom.address,\n amount: amountWei,\n enabled: spenderContractType === \"ParaswapDelta\",\n });\n\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: spenderContractType,\n amountToApproveInWei: srcCombinedAllowance,\n });\n\n const {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillUnit,\n } = useIsInsufficientBalanceToFillLimitOrder();\n\n const requiredBalanceToFillFormatted =\n isInsufficientBalanceToFill && requiredBalanceToFillUnit\n ? formatTokenAmount(requiredBalanceToFillUnit)\n : undefined;\n\n return {\n tokenBadgePropsOverride: {\n lockIcon:\n !isInsufficientBalance &&\n !isInsufficientBalanceToFill &&\n tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance || isInsufficientBalanceToFill,\n messageOverride: requiredBalanceToFillFormatted\n ? getInsufficientBalanceToFillOrderMessage(\n tokenFrom,\n requiredBalanceToFillFormatted\n )\n : undefined,\n },\n };\n};\n\nconst useMaxButtonProps = ({ tokenFrom }: { tokenFrom: Token }) => {\n const setCurrentLimitInput = useSetAtom(currentLimitInputAtom);\n const setPayInputAmount = useSetAtom(limitPayInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance;\n\n return {\n showMaxButton,\n onMaxClick: () => {\n setCurrentLimitInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n // if ETH in Limit form then it's wrapping\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n if (gasPriceMultiplier) {\n const gasFeeETH = Big(WRAP_ETH_GAS_LIMIT_INACCURATE)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useLimitTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = (): TokenInputExtraProps => {\n const appChainId = useChainId();\n const enabledChainsWithDelta = useEnabledSrcChainsWithDelta();\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps: {\n classes: {\n // to be able to switch network if on unsupported chain\n root: \"pointer-events-auto\",\n },\n networks: enabledChainsWithDelta,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: enabledChainsWithDelta.length <= 1,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n };\n};\n\nconst disabledClasses = {\n root: \"pointer-events-none\",\n};\n\nexport const useLimitInputClasses = (): TokenInputProps[\"classes\"] => {\n const unsupportedChain = useUnsupportedLimitChain();\n if (unsupportedChain) return disabledClasses;\n};\n\nexport const useLimitTokenFromInputProps = (): TokenInputProps => {\n const amountProps = useLimitTokenFromAmountProps();\n const extraProps = useExtraProps();\n\n const payInputAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei: payInputAmountWei,\n tokenFrom: amountProps.token,\n });\n\n const maxButtonProps = useMaxButtonProps({ tokenFrom: amountProps.token });\n\n const setTokenFrom = useSetAtom(selectLimitTokenFromAtom);\n\n const classes = useLimitInputClasses();\n\n return {\n ...amountProps,\n ...extraProps,\n ...tokenConditionalProps,\n ...maxButtonProps,\n onTokenSelect: setTokenFrom,\n classes,\n };\n};\n"],"names":["useLimitTokenFromAmountProps","$","_c","logger","useLogger","tokenFrom","useLimitTokenFrom","amountValue","useAtomValue","limitPayInputAmountAtom","setAmountValue","useSetAtom","setLimitPayAmountAtom","tokenBalanceUnit","useTokenFromBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","useTokenConditionalProps","amountWei","address","tokenAddress","enabled","combinedAllowance","srcCombinedAllowance","useDeltaOrderRequiredAllowance","t2","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","isInsufficientBalanceToFill","requiredBalanceToFillUnit","useIsInsufficientBalanceToFillLimitOrder","t3","t4","t5","t6","requiredBalanceToFillFormatted","formatTokenAmount","undefined","t7","needsApproval","lockIcon","getInsufficientBalanceToFillOrderMessage","shouldDisplay","messageOverride","t8","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentLimitInput","currentLimitInputAtom","setPayInputAmount","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","data","gasPrices","useGasPrices","hasBalance","showMaxButton","legacyPrices","isETH","gasPriceMultiplier","instant","gasFeeETH","Big","WRAP_ETH_GAS_LIMIT_INACCURATE","mul","div","balanceWithDeductedGas","minus","toString","onMaxClick","toDecimalTrimmed","useExtraProps","appChainId","useChainId","enabledChainsWithDelta","useEnabledSrcChainsWithDelta","setCurrentInput","root","length","classes","networks","selectedNetwork","allOption","onSelect","_temp","disabled","networkSwitcherProps","tokenType","onFocus","label","disabledClasses","useLimitInputClasses","unsupportedChain","useUnsupportedLimitChain","useLimitTokenFromInputProps","amountProps","extraProps","payInputAmountWei","limitPayInputAmountWeiAtom","tokenConditionalProps","maxButtonProps","setTokenFrom","selectLimitTokenFromAtom","onTokenSelect","chainId","switchChain"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useLimitTokenFromInputProps.js","sources":["../../../src/core/limit/useLimitTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { setLimitPayAmountAtom } from \"./state/limitInputActionsAtom\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type {\n TokenInputAmountProps,\n TokenInputExtraProps,\n} from \"../inputs/hooks/types\";\nimport { useLogger } from \"../logger\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n} from \"./state/limitInputAmountAtom\";\nimport { useChainId } from \"wagmi\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { useIsInsufficientBalanceToFillLimitOrder } from \"@/hooks/tokens/balances/useIsLimitOrderInsufficientBalance\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport Big from \"big.js\";\nimport { WRAP_ETH_GAS_LIMIT_INACCURATE } from \"@/lib/constants\";\nimport { useUnsupportedLimitChain } from \"./useLimitNotSupported\";\nimport { selectLimitTokenFromAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom } from \"./state/limitTokenAtoms\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { getInsufficientBalanceToFillOrderMessage } from \"@/lib/utils/delta\";\nimport { useDeltaOrderRequiredAllowance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport { useEnabledSrcChainsWithDelta } from \"../state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\n\nconst useLimitTokenFromAmountProps = (): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"Limit::TokenFrom::AmountProps\");\n const tokenFrom = useLimitTokenFrom();\n\n const amountValue = useAtomValue(limitPayInputAmountAtom);\n const setAmountValue = useSetAtom(setLimitPayAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const spenderContractType = \"ParaswapDelta\";\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const { combinedAllowance: srcCombinedAllowance } =\n useDeltaOrderRequiredAllowance({\n tokenAddress: tokenFrom.address,\n amount: amountWei,\n enabled: spenderContractType === \"ParaswapDelta\",\n });\n\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: spenderContractType,\n amountToApproveInWei: srcCombinedAllowance,\n });\n\n const {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillUnit,\n } = useIsInsufficientBalanceToFillLimitOrder();\n\n const requiredBalanceToFillFormatted =\n isInsufficientBalanceToFill && requiredBalanceToFillUnit\n ? formatTokenAmount(requiredBalanceToFillUnit)\n : undefined;\n\n return {\n tokenBadgePropsOverride: {\n lockIcon:\n !isInsufficientBalance &&\n !isInsufficientBalanceToFill &&\n tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance || isInsufficientBalanceToFill,\n messageOverride: requiredBalanceToFillFormatted\n ? getInsufficientBalanceToFillOrderMessage(\n tokenFrom,\n requiredBalanceToFillFormatted\n )\n : undefined,\n },\n };\n};\n\nconst useMaxButtonProps = ({ tokenFrom }: { tokenFrom: Token }) => {\n const setCurrentLimitInput = useSetAtom(currentLimitInputAtom);\n const setPayInputAmount = useSetAtom(limitPayInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance;\n\n return {\n showMaxButton,\n onMaxClick: () => {\n setCurrentLimitInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n // if ETH in Limit form then it's wrapping\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n if (gasPriceMultiplier) {\n const gasFeeETH = Big(WRAP_ETH_GAS_LIMIT_INACCURATE)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useLimitTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = (): TokenInputExtraProps => {\n const appChainId = useChainId();\n const enabledChainsWithDelta = useEnabledSrcChainsWithDelta();\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps: {\n classes: {\n // to be able to switch network if on unsupported chain\n root: \"pointer-events-auto\",\n },\n networks: enabledChainsWithDelta,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: enabledChainsWithDelta.length <= 1,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n };\n};\n\nconst disabledClasses = {\n root: \"pointer-events-none\",\n};\n\nexport const useLimitInputClasses = (): TokenInputProps[\"classes\"] => {\n const unsupportedChain = useUnsupportedLimitChain();\n if (unsupportedChain) return disabledClasses;\n};\n\nexport const useLimitTokenFromInputProps = (): TokenInputProps => {\n const amountProps = useLimitTokenFromAmountProps();\n const extraProps = useExtraProps();\n\n const payInputAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei: payInputAmountWei,\n tokenFrom: amountProps.token,\n });\n\n const maxButtonProps = useMaxButtonProps({ tokenFrom: amountProps.token });\n\n const setTokenFrom = useSetAtom(selectLimitTokenFromAtom);\n\n const classes = useLimitInputClasses();\n\n return {\n ...amountProps,\n ...extraProps,\n ...tokenConditionalProps,\n ...maxButtonProps,\n onTokenSelect: setTokenFrom,\n classes,\n };\n};\n"],"names":["useLimitTokenFromAmountProps","$","_c","logger","useLogger","tokenFrom","useLimitTokenFrom","amountValue","useAtomValue","limitPayInputAmountAtom","setAmountValue","useSetAtom","setLimitPayAmountAtom","tokenBalanceUnit","useTokenFromBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","useTokenConditionalProps","amountWei","address","tokenAddress","enabled","combinedAllowance","srcCombinedAllowance","useDeltaOrderRequiredAllowance","t2","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","isInsufficientBalanceToFill","requiredBalanceToFillUnit","useIsInsufficientBalanceToFillLimitOrder","t3","t4","t5","t6","requiredBalanceToFillFormatted","formatTokenAmount","undefined","t7","needsApproval","lockIcon","getInsufficientBalanceToFillOrderMessage","shouldDisplay","messageOverride","t8","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentLimitInput","currentLimitInputAtom","setPayInputAmount","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","data","gasPrices","useGasPrices","hasBalance","showMaxButton","legacyPrices","isETH","gasPriceMultiplier","instant","gasFeeETH","Big","WRAP_ETH_GAS_LIMIT_INACCURATE","mul","div","balanceWithDeductedGas","minus","toString","onMaxClick","toDecimalTrimmed","useExtraProps","appChainId","useChainId","enabledChainsWithDelta","useEnabledSrcChainsWithDelta","setCurrentInput","root","length","classes","networks","selectedNetwork","allOption","onSelect","_temp","disabled","networkSwitcherProps","tokenType","onFocus","label","disabledClasses","useLimitInputClasses","unsupportedChain","useUnsupportedLimitChain","useLimitTokenFromInputProps","amountProps","extraProps","payInputAmountWei","limitPayInputAmountWeiAtom","tokenConditionalProps","maxButtonProps","setTokenFrom","selectLimitTokenFromAtom","onTokenSelect","chainId","switchChain"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { d as distExports } from '../../_virtual/index.js';
|
|
|
2
2
|
import { cn } from '../../lib/utils/index.js';
|
|
3
3
|
import { useSetAtom } from '../store.js';
|
|
4
4
|
import { switchLimitTokensAtom } from './state/selectedTokenActionsAtom.js';
|
|
5
|
-
import { useLimitTokenTo } from './state/
|
|
5
|
+
import { useLimitTokenTo } from './state/limitTokenAtoms.js';
|
|
6
6
|
import { useUnsupportedLimitChain } from './useLimitNotSupported.js';
|
|
7
7
|
|
|
8
8
|
const useLimitTokenSwitcherProps = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitTokenSwitcherProps.js","sources":["../../../src/core/limit/useLimitTokenSwitcherProps.ts"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSetAtom } from \"@/core/store\";\nimport { switchLimitTokensAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenTo } from \"./state/
|
|
1
|
+
{"version":3,"file":"useLimitTokenSwitcherProps.js","sources":["../../../src/core/limit/useLimitTokenSwitcherProps.ts"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSetAtom } from \"@/core/store\";\nimport { switchLimitTokensAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenTo } from \"./state/limitTokenAtoms\";\nimport { useUnsupportedLimitChain } from \"./useLimitNotSupported\";\n\nexport const useLimitTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useLimitTokenTo();\n const switchTokens = useSetAtom(switchLimitTokensAtom);\n const unsupportedLimitChain = useUnsupportedLimitChain();\n\n return {\n enableSwitchTokens: !!tokenTo,\n onSwitchTokens: switchTokens,\n classes: {\n root: cn({ \"pointer-events-none\": unsupportedLimitChain }),\n },\n };\n};\n"],"names":["useLimitTokenSwitcherProps","$","_c","tokenTo","useLimitTokenTo","switchTokens","useSetAtom","switchLimitTokensAtom","unsupportedLimitChain","useUnsupportedLimitChain","t0","t1","cn","t2","root","t3","enableSwitchTokens","onSwitchTokens","classes"],"mappings":";;;;;;;AAOO,MAAMA,6BAA6BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACxC,EAAA,MAAAC,UAAgBC,eAAAA,EAAgB;AAChC,EAAA,MAAAC,YAAAA,GAAqBC,WAAWC,qBAAqB,CAAA;AACrD,EAAA,MAAAC,wBAA8BC,wBAAAA,EAAyB;AAGjC,EAAA,MAAAC,EAAAA,GAAA,CAAC,CAACP,OAAAA;AAAO,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAV,CAAAA,QAAAO,qBAAAA,EAAA;AAGrBG,IAAAA,EAAAA,GAAAC,EAAAA,CAAG;AAAA,MAAA,qBAAA,EAAyBJ;AAAAA,KAAuB,CAAA;AAACP,IAAAA,CAAAA,MAAAO,qBAAAA;AAAAP,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,QAAAU,EAAAA,EAAA;AADnDE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,IAAAA,EACDH;AAAAA,KACR;AAACV,IAAAA,CAAAA,MAAAU,EAAAA;AAAAV,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAc,EAAAA;AAAA,EAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAI,YAAAA,IAAAJ,CAAAA,QAAAS,EAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAY,EAAAA,EAAA;AALIE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,kBAAAA,EACeN,EAAAA;AAAAA,MAASO,cAAAA,EACbZ,YAAAA;AAAAA,MAAYa,OAAAA,EACnBL;AAAAA,KAGX;AAACZ,IAAAA,CAAAA,MAAAI,YAAAA;AAAAJ,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANMc,EAAAA;AAMN;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAgB5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"useLimitTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAgB5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AA0FlD,KAAK,4BAA4B,GAAG;IAClC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7C,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,yBAAyB,IAAI,4BAA4B,CA8BxE;AA0CD,eAAO,MAAM,yBAAyB,QAAO,eAc5C,CAAC"}
|
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { d as distExports } from '../../_virtual/index.js';
|
|
3
|
-
import { useAtomValue, useSetAtom } from '../store.js';
|
|
3
|
+
import { useAtomValue, useSetAtom, useAtom } from '../store.js';
|
|
4
4
|
import { limitReceiveInputAmountAtom } from './state/limitInputAmountAtom.js';
|
|
5
5
|
import { setLimitReceiveAmountAtom } from './state/limitInputActionsAtom.js';
|
|
6
6
|
import { useLogger } from '../logger.js';
|
|
7
|
-
import { useLimitRate } from './useLimitRate.js';
|
|
7
|
+
import { useLimitRate, useDeltaSwapPriceForLimit } from './useLimitRate.js';
|
|
8
8
|
import { currentLimitInputAtom } from './state/currentLimitInputAtom.js';
|
|
9
9
|
import { useTokenBalance } from '../../hooks/tokens/balances/useTokenBalance.js';
|
|
10
10
|
import { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from '../../lib/constants/time.js';
|
|
11
11
|
import { toDecimalTrimmed } from '../../lib/utils/toDecimal.js';
|
|
12
12
|
import { useLimitInputClasses } from './useLimitTokenFromInputProps.js';
|
|
13
13
|
import { selectLimitTokenToAtom } from './state/selectedTokenActionsAtom.js';
|
|
14
|
-
import { useLimitTokenTo, useLimitTokenFrom } from './state/
|
|
14
|
+
import { useLimitTokenTo, useLimitTokenFrom } from './state/limitTokenAtoms.js';
|
|
15
15
|
import { useIsTokenSupportedInDeltaQuery } from '../../hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js';
|
|
16
16
|
import { isFilledArray } from '../../lib/utils/tuple.js';
|
|
17
17
|
import { useChainId } from 'wagmi';
|
|
18
|
+
import { useSelectableDestChains } from '../../hooks/useSelectableDestChains.js';
|
|
19
|
+
import { limitChainToAtom } from '../state/chainToAtom.js';
|
|
20
|
+
import { parseDeltaApiError, replaceUnsupportedTokenMessage, isUnsupportedTokenError } from '../../lib/utils/delta.js';
|
|
21
|
+
import { isTruthy } from '../../lib/utils/index.js';
|
|
18
22
|
|
|
19
23
|
const useTokenToBalanceUnit = () => {
|
|
20
24
|
const $ = distExports.c(5);
|
|
@@ -52,62 +56,78 @@ const useTokenToBalanceUnit = () => {
|
|
|
52
56
|
}
|
|
53
57
|
return t2;
|
|
54
58
|
};
|
|
55
|
-
const useExtraProps = () => {
|
|
56
|
-
const $ = distExports.c(
|
|
59
|
+
const useExtraProps = (t0) => {
|
|
60
|
+
const $ = distExports.c(14);
|
|
61
|
+
const {
|
|
62
|
+
acrossMode
|
|
63
|
+
} = t0;
|
|
57
64
|
const appChainId = useChainId();
|
|
58
|
-
const
|
|
59
|
-
let t0;
|
|
60
|
-
if ($[0] !== appChainId) {
|
|
61
|
-
t0 = [appChainId];
|
|
62
|
-
$[0] = appChainId;
|
|
63
|
-
$[1] = t0;
|
|
64
|
-
} else {
|
|
65
|
-
t0 = $[1];
|
|
66
|
-
}
|
|
65
|
+
const [chainTo, setChainTo] = useAtom(limitChainToAtom);
|
|
67
66
|
let t1;
|
|
68
|
-
if ($[
|
|
67
|
+
if ($[0] !== acrossMode || $[1] !== appChainId) {
|
|
69
68
|
t1 = {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
disabled: true,
|
|
73
|
-
hidden: true
|
|
69
|
+
fromChainId: appChainId,
|
|
70
|
+
mode: acrossMode
|
|
74
71
|
};
|
|
75
|
-
$[
|
|
76
|
-
$[
|
|
77
|
-
$[
|
|
72
|
+
$[0] = acrossMode;
|
|
73
|
+
$[1] = appChainId;
|
|
74
|
+
$[2] = t1;
|
|
78
75
|
} else {
|
|
79
|
-
t1 = $[
|
|
76
|
+
t1 = $[2];
|
|
80
77
|
}
|
|
78
|
+
const {
|
|
79
|
+
selectableChains
|
|
80
|
+
} = useSelectableDestChains(t1);
|
|
81
|
+
const showNetworkSwitcher = chainTo !== void 0;
|
|
81
82
|
let t2;
|
|
82
|
-
if ($[5] !==
|
|
83
|
-
t2 =
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
if ($[3] !== chainTo || $[4] !== selectableChains || $[5] !== setChainTo || $[6] !== showNetworkSwitcher) {
|
|
84
|
+
t2 = showNetworkSwitcher ? {
|
|
85
|
+
networks: selectableChains,
|
|
86
|
+
selectedNetwork: chainTo,
|
|
87
|
+
allOption: false,
|
|
88
|
+
onSelect: (chainId) => chainId !== "all" && setChainTo(chainId),
|
|
89
|
+
disabled: selectableChains.length <= 1
|
|
90
|
+
} : void 0;
|
|
91
|
+
$[3] = chainTo;
|
|
92
|
+
$[4] = selectableChains;
|
|
93
|
+
$[5] = setChainTo;
|
|
94
|
+
$[6] = showNetworkSwitcher;
|
|
95
|
+
$[7] = t2;
|
|
86
96
|
} else {
|
|
87
|
-
t2 = $[
|
|
97
|
+
t2 = $[7];
|
|
88
98
|
}
|
|
99
|
+
const networkSwitcherProps = t2;
|
|
100
|
+
const setCurrentInput = useSetAtom(currentLimitInputAtom);
|
|
89
101
|
let t3;
|
|
90
|
-
if ($[
|
|
91
|
-
t3 =
|
|
92
|
-
$[
|
|
102
|
+
if ($[8] !== setCurrentInput) {
|
|
103
|
+
t3 = () => setCurrentInput("to");
|
|
104
|
+
$[8] = setCurrentInput;
|
|
105
|
+
$[9] = t3;
|
|
93
106
|
} else {
|
|
94
|
-
t3 = $[
|
|
107
|
+
t3 = $[9];
|
|
95
108
|
}
|
|
96
109
|
let t4;
|
|
97
|
-
if ($[
|
|
98
|
-
t4 = {
|
|
99
|
-
networkSwitcherProps: t1,
|
|
100
|
-
tokenType: "to",
|
|
101
|
-
onFocus: t2,
|
|
102
|
-
label: t3
|
|
103
|
-
};
|
|
104
|
-
$[8] = t1;
|
|
105
|
-
$[9] = t2;
|
|
110
|
+
if ($[10] === Symbol.for("react.memo_cache_sentinel")) {
|
|
111
|
+
t4 = /* @__PURE__ */ jsx("span", { children: "Receive" });
|
|
106
112
|
$[10] = t4;
|
|
107
113
|
} else {
|
|
108
114
|
t4 = $[10];
|
|
109
115
|
}
|
|
110
|
-
|
|
116
|
+
let t5;
|
|
117
|
+
if ($[11] !== networkSwitcherProps || $[12] !== t3) {
|
|
118
|
+
t5 = {
|
|
119
|
+
networkSwitcherProps,
|
|
120
|
+
tokenType: "to",
|
|
121
|
+
onFocus: t3,
|
|
122
|
+
label: t4
|
|
123
|
+
};
|
|
124
|
+
$[11] = networkSwitcherProps;
|
|
125
|
+
$[12] = t3;
|
|
126
|
+
$[13] = t5;
|
|
127
|
+
} else {
|
|
128
|
+
t5 = $[13];
|
|
129
|
+
}
|
|
130
|
+
return t5;
|
|
111
131
|
};
|
|
112
132
|
const useTokenToAmountProps = () => {
|
|
113
133
|
const $ = distExports.c(9);
|
|
@@ -224,63 +244,103 @@ function useUnsupportedLimitTokens() {
|
|
|
224
244
|
return t6;
|
|
225
245
|
}
|
|
226
246
|
function useWarningMessage() {
|
|
227
|
-
const $ = distExports.c(
|
|
247
|
+
const $ = distExports.c(11);
|
|
248
|
+
const tokenTo = useLimitTokenTo();
|
|
249
|
+
const tokenFrom = useLimitTokenFrom();
|
|
250
|
+
const isCrosschainLimitOrder = tokenFrom && tokenTo && tokenFrom.network !== tokenTo.network;
|
|
251
|
+
let t0;
|
|
252
|
+
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
253
|
+
t0 = {
|
|
254
|
+
tradeMode: "limit",
|
|
255
|
+
enabled: false
|
|
256
|
+
};
|
|
257
|
+
$[0] = t0;
|
|
258
|
+
} else {
|
|
259
|
+
t0 = $[0];
|
|
260
|
+
}
|
|
261
|
+
const {
|
|
262
|
+
error: limitPriceError
|
|
263
|
+
} = useDeltaSwapPriceForLimit(t0);
|
|
264
|
+
const priceError = isCrosschainLimitOrder ? limitPriceError : void 0;
|
|
265
|
+
let t1;
|
|
266
|
+
if ($[1] !== priceError || $[2] !== tokenFrom || $[3] !== tokenTo) {
|
|
267
|
+
const deltaPriceError = priceError && parseDeltaApiError(priceError);
|
|
268
|
+
t1 = deltaPriceError ? isUnsupportedTokenError(deltaPriceError) ? replaceUnsupportedTokenMessage(deltaPriceError.description, [tokenFrom, tokenTo].filter(isTruthy)) : deltaPriceError?.description : null;
|
|
269
|
+
$[1] = priceError;
|
|
270
|
+
$[2] = tokenFrom;
|
|
271
|
+
$[3] = tokenTo;
|
|
272
|
+
$[4] = t1;
|
|
273
|
+
} else {
|
|
274
|
+
t1 = $[4];
|
|
275
|
+
}
|
|
276
|
+
const deltaErrorToShow = t1;
|
|
228
277
|
const {
|
|
229
278
|
unsupportedTokens,
|
|
230
279
|
isLoading
|
|
231
280
|
} = useUnsupportedLimitTokens();
|
|
232
|
-
let
|
|
233
|
-
if ($[
|
|
234
|
-
|
|
235
|
-
$[
|
|
236
|
-
$[
|
|
281
|
+
let t2;
|
|
282
|
+
if ($[5] !== unsupportedTokens) {
|
|
283
|
+
t2 = unsupportedTokens ? customUnsupportedTokenMessage(unsupportedTokens) : void 0;
|
|
284
|
+
$[5] = unsupportedTokens;
|
|
285
|
+
$[6] = t2;
|
|
237
286
|
} else {
|
|
238
|
-
|
|
287
|
+
t2 = $[6];
|
|
239
288
|
}
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
289
|
+
const unsupportedTokensWarning = t2;
|
|
290
|
+
const warningMessage = unsupportedTokensWarning || deltaErrorToShow || void 0;
|
|
291
|
+
let t3;
|
|
292
|
+
if ($[7] !== isLoading || $[8] !== unsupportedTokens || $[9] !== warningMessage) {
|
|
293
|
+
t3 = {
|
|
294
|
+
warningMessage,
|
|
244
295
|
unsupportedTokens,
|
|
245
296
|
isLoading
|
|
246
297
|
};
|
|
247
|
-
$[
|
|
248
|
-
$[
|
|
249
|
-
$[
|
|
250
|
-
$[
|
|
298
|
+
$[7] = isLoading;
|
|
299
|
+
$[8] = unsupportedTokens;
|
|
300
|
+
$[9] = warningMessage;
|
|
301
|
+
$[10] = t3;
|
|
251
302
|
} else {
|
|
252
|
-
|
|
303
|
+
t3 = $[10];
|
|
253
304
|
}
|
|
254
|
-
return
|
|
305
|
+
return t3;
|
|
255
306
|
}
|
|
256
307
|
const useLimitTokenToInputProps = () => {
|
|
257
|
-
const $ = distExports.c(
|
|
308
|
+
const $ = distExports.c(7);
|
|
258
309
|
const extraAmountProps = useTokenToAmountProps();
|
|
259
|
-
|
|
310
|
+
let t0;
|
|
311
|
+
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
312
|
+
t0 = {
|
|
313
|
+
acrossMode: "limit"
|
|
314
|
+
};
|
|
315
|
+
$[0] = t0;
|
|
316
|
+
} else {
|
|
317
|
+
t0 = $[0];
|
|
318
|
+
}
|
|
319
|
+
const extraProps = useExtraProps(t0);
|
|
260
320
|
const tokenBalanceUnit = useTokenToBalanceUnit();
|
|
261
321
|
const classes = useLimitInputClasses();
|
|
262
322
|
const {
|
|
263
323
|
warningMessage
|
|
264
324
|
} = useWarningMessage();
|
|
265
|
-
let
|
|
266
|
-
if ($[
|
|
267
|
-
|
|
325
|
+
let t1;
|
|
326
|
+
if ($[1] !== classes || $[2] !== extraAmountProps || $[3] !== extraProps || $[4] !== tokenBalanceUnit || $[5] !== warningMessage) {
|
|
327
|
+
t1 = {
|
|
268
328
|
...extraProps,
|
|
269
329
|
...extraAmountProps,
|
|
270
330
|
tokenBalanceUnit,
|
|
271
331
|
classes,
|
|
272
332
|
warningMessage
|
|
273
333
|
};
|
|
274
|
-
$[
|
|
275
|
-
$[
|
|
276
|
-
$[
|
|
277
|
-
$[
|
|
278
|
-
$[
|
|
279
|
-
$[
|
|
334
|
+
$[1] = classes;
|
|
335
|
+
$[2] = extraAmountProps;
|
|
336
|
+
$[3] = extraProps;
|
|
337
|
+
$[4] = tokenBalanceUnit;
|
|
338
|
+
$[5] = warningMessage;
|
|
339
|
+
$[6] = t1;
|
|
280
340
|
} else {
|
|
281
|
-
|
|
341
|
+
t1 = $[6];
|
|
282
342
|
}
|
|
283
|
-
return
|
|
343
|
+
return t1;
|
|
284
344
|
};
|
|
285
345
|
function customUnsupportedTokenMessage(tokens) {
|
|
286
346
|
if (!isFilledArray(tokens)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLimitTokenToInputProps.js","sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { limitReceiveInputAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { setLimitReceiveAmountAtom } from \"./state/limitInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useLimitRate } from \"./useLimitRate\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLimitInputClasses } from \"./useLimitTokenFromInputProps\";\nimport { selectLimitTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom, useLimitTokenTo } from \"./state/selectedTokenAtom\";\nimport { useIsTokenSupportedInDeltaQuery } from \"@/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { useChainId } from \"wagmi\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useLimitTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = (): TokenInputExtraProps => {\n // @TODO change to destChain when implementing Crosschain Delta Limit Orders\n const appChainId = useChainId();\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps: {\n // @TODO provide all necessary networks and other props when implementing Crosschain Delta Limit Orders\n networks: [appChainId],\n selectedNetwork: appChainId,\n disabled: true,\n hidden: true,\n },\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Limit::TokenTo::AmountProps\");\n const tokenTo = useLimitTokenTo();\n\n const receiveAmount = useAtomValue(limitReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setLimitReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"limit\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectLimitTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\ntype UnsupportedLimitTokensResult = {\n unsupportedTokens?: [Token, Token] | [Token];\n isLoading: boolean;\n};\n\nexport function useUnsupportedLimitTokens(): UnsupportedLimitTokensResult {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const { data: isDestTokenSupported, isLoading: isDestTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenTo?.address,\n chainId: tokenTo?.network || tokenFrom.network,\n });\n\n const { data: isSrcTokenSupported, isLoading: isSrcTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenFrom.address,\n chainId: tokenFrom.network,\n });\n\n const unsupportedTokens: Token[] = [];\n if (isSrcTokenSupported === false) {\n unsupportedTokens.push(tokenFrom);\n }\n if (isDestTokenSupported === false && tokenTo) {\n unsupportedTokens.push(tokenTo);\n }\n\n return {\n unsupportedTokens: isFilledArray(unsupportedTokens)\n ? (unsupportedTokens as UnsupportedLimitTokensResult[\"unsupportedTokens\"])\n : undefined,\n isLoading: isDestTokenSupportedLoading || isSrcTokenSupportedLoading,\n };\n}\n\nfunction useWarningMessage(): UnsupportedLimitTokensResult & {\n warningMessage?: string;\n} {\n const { unsupportedTokens, isLoading } = useUnsupportedLimitTokens();\n return {\n warningMessage: unsupportedTokens\n ? customUnsupportedTokenMessage(unsupportedTokens)\n : undefined,\n unsupportedTokens,\n isLoading,\n };\n}\n\nexport const useLimitTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps();\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useLimitInputClasses();\n const { warningMessage } = useWarningMessage();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n warningMessage,\n };\n};\n\nfunction customUnsupportedTokenMessage(\n tokens: Pick<Token, \"symbol\">[]\n): string | undefined {\n if (!isFilledArray(tokens)) {\n return;\n }\n if (tokens.length === 1) {\n return `Token ${tokens[0].symbol} is not supported for this order`;\n }\n\n const tokenSymbols = tokens.map((token) => token.symbol).join(\", \");\n return `Tokens ${tokenSymbols} are not supported for this order`;\n}\n"],"names":["useTokenToBalanceUnit","$","_c","tokenTo","useLimitTokenTo","t0","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t1","token","queryOptions","balanceUnit","useTokenBalance","t2","toDecimalTrimmed","useExtraProps","appChainId","useChainId","setCurrentInput","useSetAtom","currentLimitInputAtom","networks","selectedNetwork","disabled","hidden","t3","t4","networkSwitcherProps","tokenType","onFocus","label","useTokenToAmountProps","logger","useLogger","receiveAmount","useAtomValue","limitReceiveInputAmountAtom","setReceiveAmount","setLimitReceiveAmountAtom","isLoading","useLimitRate","values","log","value","onAmountChange","setTokenTo","selectLimitTokenToAtom","amount","onTokenSelect","useUnsupportedLimitTokens","tokenFrom","useLimitTokenFrom","address","network","chainId","data","isDestTokenSupported","isDestTokenSupportedLoading","useIsTokenSupportedInDeltaQuery","isSrcTokenSupported","isSrcTokenSupportedLoading","unsupportedTokens","push","isFilledArray","undefined","t5","t6","useWarningMessage","customUnsupportedTokenMessage","warningMessage","useLimitTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","useLimitInputClasses","tokens","length","symbol","tokenSymbols","map","join"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useLimitTokenToInputProps.js","sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtom, useAtomValue, useSetAtom } from \"@/core/store\";\nimport { limitReceiveInputAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { setLimitReceiveAmountAtom } from \"./state/limitInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useDeltaSwapPriceForLimit, useLimitRate } from \"./useLimitRate\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLimitInputClasses } from \"./useLimitTokenFromInputProps\";\nimport { selectLimitTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom, useLimitTokenTo } from \"./state/limitTokenAtoms\";\nimport { useIsTokenSupportedInDeltaQuery } from \"@/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { useChainId } from \"wagmi\";\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { limitChainToAtom } from \"../state/chainToAtom\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo\";\nimport {\n isUnsupportedTokenError,\n parseDeltaApiError,\n replaceUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { isTruthy } from \"@/lib/utils\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useLimitTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = ({\n acrossMode,\n}: {\n acrossMode: BridgeInfoMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const [chainTo, setChainTo] = useAtom(limitChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Limit::TokenTo::AmountProps\");\n const tokenTo = useLimitTokenTo();\n\n const receiveAmount = useAtomValue(limitReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setLimitReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"limit\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectLimitTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\ntype UnsupportedLimitTokensResult = {\n unsupportedTokens?: [Token, Token] | [Token];\n isLoading: boolean;\n};\n\nexport function useUnsupportedLimitTokens(): UnsupportedLimitTokensResult {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const { data: isDestTokenSupported, isLoading: isDestTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenTo?.address,\n chainId: tokenTo?.network || tokenFrom.network,\n });\n\n const { data: isSrcTokenSupported, isLoading: isSrcTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenFrom.address,\n chainId: tokenFrom.network,\n });\n\n const unsupportedTokens: Token[] = [];\n if (isSrcTokenSupported === false) {\n unsupportedTokens.push(tokenFrom);\n }\n if (isDestTokenSupported === false && tokenTo) {\n unsupportedTokens.push(tokenTo);\n }\n\n return {\n unsupportedTokens: isFilledArray(unsupportedTokens)\n ? (unsupportedTokens as UnsupportedLimitTokensResult[\"unsupportedTokens\"])\n : undefined,\n isLoading: isDestTokenSupportedLoading || isSrcTokenSupportedLoading,\n };\n}\n\nfunction useWarningMessage(): UnsupportedLimitTokensResult & {\n warningMessage?: string;\n} {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const isCrosschainLimitOrder =\n tokenFrom && tokenTo && tokenFrom.network !== tokenTo.network;\n\n const { error: limitPriceError } = useDeltaSwapPriceForLimit({\n // DeltaPrice is required for crosschain Limit orders only\n tradeMode: \"limit\",\n enabled: false, // get result only\n });\n\n const priceError = isCrosschainLimitOrder ? limitPriceError : undefined;\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const { unsupportedTokens, isLoading } = useUnsupportedLimitTokens();\n const unsupportedTokensWarning = unsupportedTokens\n ? customUnsupportedTokenMessage(unsupportedTokens)\n : undefined;\n\n const warningMessage =\n unsupportedTokensWarning || deltaErrorToShow || undefined;\n return {\n warningMessage,\n unsupportedTokens,\n isLoading,\n };\n}\n\nexport const useLimitTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps({ acrossMode: \"limit\" });\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useLimitInputClasses();\n const { warningMessage } = useWarningMessage();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n warningMessage,\n };\n};\n\nfunction customUnsupportedTokenMessage(\n tokens: Pick<Token, \"symbol\">[]\n): string | undefined {\n if (!isFilledArray(tokens)) {\n return;\n }\n if (tokens.length === 1) {\n return `Token ${tokens[0].symbol} is not supported for this order`;\n }\n\n const tokenSymbols = tokens.map((token) => token.symbol).join(\", \");\n return `Tokens ${tokenSymbols} are not supported for this order`;\n}\n"],"names":["useTokenToBalanceUnit","$","_c","tokenTo","useLimitTokenTo","t0","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t1","token","queryOptions","balanceUnit","useTokenBalance","t2","toDecimalTrimmed","useExtraProps","acrossMode","appChainId","useChainId","chainTo","setChainTo","useAtom","limitChainToAtom","fromChainId","mode","selectableChains","useSelectableDestChains","showNetworkSwitcher","undefined","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","useSetAtom","currentLimitInputAtom","t3","t4","t5","tokenType","onFocus","label","useTokenToAmountProps","logger","useLogger","receiveAmount","useAtomValue","limitReceiveInputAmountAtom","setReceiveAmount","setLimitReceiveAmountAtom","isLoading","useLimitRate","values","log","value","onAmountChange","setTokenTo","selectLimitTokenToAtom","amount","onTokenSelect","useUnsupportedLimitTokens","tokenFrom","useLimitTokenFrom","address","network","data","isDestTokenSupported","isDestTokenSupportedLoading","useIsTokenSupportedInDeltaQuery","isSrcTokenSupported","isSrcTokenSupportedLoading","unsupportedTokens","push","isFilledArray","t6","useWarningMessage","isCrosschainLimitOrder","tradeMode","enabled","error","limitPriceError","useDeltaSwapPriceForLimit","priceError","deltaPriceError","parseDeltaApiError","isUnsupportedTokenError","replaceUnsupportedTokenMessage","description","filter","isTruthy","deltaErrorToShow","customUnsupportedTokenMessage","unsupportedTokensWarning","warningMessage","useLimitTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","useLimitInputClasses","tokens","symbol","tokenSymbols","map","join"],"mappings":"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"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { TimeUnitState } from '../../limit/state/deadlineAtom';
|
|
2
|
+
import { SetStateAction } from 'jotai';
|
|
3
|
+
export declare const timeUnitAtom: import('jotai').WritableAtom<TimeUnitState, [SetStateAction<{
|
|
4
|
+
label: import('../../limit/state/deadlineAtom').TimeUnit;
|
|
5
|
+
value: number;
|
|
6
|
+
timestamp?: number | undefined;
|
|
7
|
+
}>], void> & {
|
|
8
|
+
init: TimeUnitState;
|
|
4
9
|
};
|
|
5
10
|
export declare const deadlineAtom: import('jotai').Atom<number>;
|
|
6
11
|
export declare const useOtcDeadline: () => number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deadlineAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/otc/state/deadlineAtom.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deadlineAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/otc/state/deadlineAtom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGrE,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAGlD,eAAO,MAAM,YAAY;;;;;;CAyBvB,CAAC;AAEH,eAAO,MAAM,YAAY,8BAA6C,CAAC;AAEvE,eAAO,MAAM,cAAc,cAE1B,CAAC"}
|
|
@@ -1,17 +1,23 @@
|
|
|
1
|
-
import { defaultTimeUnit,
|
|
2
|
-
import {
|
|
3
|
-
import { atom } from 'jotai';
|
|
1
|
+
import { defaultTimeUnit, minTimeUnit } from '../../limit/state/constants.js';
|
|
2
|
+
import { getTimeUnitState } from '../../limit/state/utils.js';
|
|
4
3
|
import { useAtomValue } from '../../store.js';
|
|
4
|
+
import { atom } from 'jotai';
|
|
5
5
|
|
|
6
|
-
const timeUnitAtom = atom(defaultTimeUnit)
|
|
7
|
-
const
|
|
8
|
-
let
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
const timeUnitAtom = atom(getTimeUnitState(defaultTimeUnit), (get, set, _newState) => {
|
|
7
|
+
const newState = typeof _newState === "function" ? _newState(get(timeUnitAtom)) : _newState;
|
|
8
|
+
let stateToSet = getTimeUnitState(newState);
|
|
9
|
+
const minTimeUnitState = getTimeUnitState(minTimeUnit);
|
|
10
|
+
const isTimestampInvalid = (
|
|
11
|
+
// OTC can have 0 deadline
|
|
12
|
+
stateToSet.timestamp > 0 && stateToSet.timestamp < minTimeUnitState.timestamp
|
|
13
|
+
);
|
|
14
|
+
const isUnitInvalid = stateToSet.label === minTimeUnit.label && stateToSet.value < minTimeUnitState.value;
|
|
15
|
+
if (isTimestampInvalid || isUnitInvalid) {
|
|
16
|
+
stateToSet = minTimeUnitState;
|
|
12
17
|
}
|
|
13
|
-
|
|
18
|
+
set(timeUnitAtom, stateToSet);
|
|
14
19
|
});
|
|
20
|
+
const deadlineAtom = atom((get) => get(timeUnitAtom).timestamp);
|
|
15
21
|
const useOtcDeadline = () => {
|
|
16
22
|
return useAtomValue(deadlineAtom);
|
|
17
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deadlineAtom.js","sources":["../../../../src/core/otc/state/deadlineAtom.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"deadlineAtom.js","sources":["../../../../src/core/otc/state/deadlineAtom.ts"],"sourcesContent":["import { defaultTimeUnit, minTimeUnit } from \"@/core/limit/state/constants\";\nimport type { TimeUnitState } from \"@/core/limit/state/deadlineAtom\";\nimport { getTimeUnitState } from \"@/core/limit/state/utils\";\nimport { useAtomValue } from \"@/core/store\";\nimport { atom, type SetStateAction } from \"jotai\";\nimport type { MarkOptional } from \"ts-essentials\";\n\nexport const timeUnitAtom = atom<\n TimeUnitState,\n [SetStateAction<MarkOptional<TimeUnitState, \"timestamp\">>],\n void\n>(getTimeUnitState(defaultTimeUnit), (get, set, _newState) => {\n const newState =\n typeof _newState === \"function\" ? _newState(get(timeUnitAtom)) : _newState;\n\n let stateToSet = getTimeUnitState(newState);\n\n const minTimeUnitState = getTimeUnitState(minTimeUnit);\n\n const isTimestampInvalid =\n // OTC can have 0 deadline\n stateToSet.timestamp > 0 &&\n stateToSet.timestamp < minTimeUnitState.timestamp;\n const isUnitInvalid =\n stateToSet.label === minTimeUnit.label &&\n stateToSet.value < minTimeUnitState.value;\n\n if (isTimestampInvalid || isUnitInvalid) {\n stateToSet = minTimeUnitState;\n }\n\n set(timeUnitAtom, stateToSet);\n});\n\nexport const deadlineAtom = atom((get) => get(timeUnitAtom).timestamp);\n\nexport const useOtcDeadline = () => {\n return useAtomValue(deadlineAtom);\n};\n"],"names":["timeUnitAtom","atom","getTimeUnitState","defaultTimeUnit","get","set","_newState","newState","stateToSet","minTimeUnitState","minTimeUnit","isTimestampInvalid","timestamp","isUnitInvalid","label","value","deadlineAtom","useOtcDeadline","useAtomValue"],"mappings":";;;;;AAOO,MAAMA,YAAAA,GAAeC,KAI1BC,gBAAAA,CAAiBC,eAAe,GAAG,CAACC,GAAAA,EAAKC,KAAKC,SAAAA,KAAc;AAC5D,EAAA,MAAMC,QAAAA,GACJ,OAAOD,SAAAA,KAAc,UAAA,GAAaA,UAAUF,GAAAA,CAAIJ,YAAY,CAAC,CAAA,GAAIM,SAAAA;AAEnE,EAAA,IAAIE,UAAAA,GAAaN,iBAAiBK,QAAQ,CAAA;AAE1C,EAAA,MAAME,gBAAAA,GAAmBP,iBAAiBQ,WAAW,CAAA;AAErD,EAAA,MAAMC,kBAAAA;AAAAA;AAAAA,IAEJH,UAAAA,CAAWI,SAAAA,GAAY,CAAA,IACvBJ,UAAAA,CAAWI,YAAYH,gBAAAA,CAAiBG;AAAAA,GAAAA;AAC1C,EAAA,MAAMC,gBACJL,UAAAA,CAAWM,KAAAA,KAAUJ,YAAYI,KAAAA,IACjCN,UAAAA,CAAWO,QAAQN,gBAAAA,CAAiBM,KAAAA;AAEtC,EAAA,IAAIJ,sBAAsBE,aAAAA,EAAe;AACvCL,IAAAA,UAAAA,GAAaC,gBAAAA;AAAAA,EACf;AAEAJ,EAAAA,GAAAA,CAAIL,cAAcQ,UAAU,CAAA;AAC9B,CAAC;AAEM,MAAMQ,eAAef,IAAAA,CAAMG,CAAAA,GAAAA,KAAQA,GAAAA,CAAIJ,YAAY,EAAEY,SAAS;AAE9D,MAAMK,iBAAiBA,MAAA;AAAA,EAAA,OACrBC,aAAaF,YAAY,CAAA;AAAC;;;;"}
|
|
@@ -5,12 +5,15 @@ export declare const setOtcPriceRatesAtom: import('jotai').WritableAtom<null, [p
|
|
|
5
5
|
export declare const setOtcPayAmountAtom: import('jotai').WritableAtom<null, [payAmount: string], void> & {
|
|
6
6
|
init: null;
|
|
7
7
|
};
|
|
8
|
-
export declare const
|
|
8
|
+
export declare const setOtcPayAmountAtomFromProps: import('jotai').WritableAtom<null, [amount: string], void> & {
|
|
9
9
|
init: null;
|
|
10
10
|
};
|
|
11
11
|
export declare const setOtcReceiveAmountAtom: import('jotai').WritableAtom<null, [receiveAmount: string], void> & {
|
|
12
12
|
init: null;
|
|
13
13
|
};
|
|
14
|
+
export declare const setOtcReceiveAmountAtomFromProps: import('jotai').WritableAtom<null, [amount: string], void> & {
|
|
15
|
+
init: null;
|
|
16
|
+
};
|
|
14
17
|
export declare const resetOtcPriceAtom: import('jotai').WritableAtom<null, [priceRates?: PriceRates | undefined], void> & {
|
|
15
18
|
init: null;
|
|
16
19
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"otcInputActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/otc/state/otcInputActionsAtom.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,oBAAoB;;CAwBhC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;CAsB9B,CAAC;AAEH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"otcInputActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/otc/state/otcInputActionsAtom.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,oBAAoB;;CAwBhC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;CAsB9B,CAAC;AAEH,eAAO,MAAM,4BAA4B;;CAMxC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;CA2BnC,CAAC;AAEF,eAAO,MAAM,gCAAgC;;CAM5C,CAAC;AAEF,eAAO,MAAM,iBAAiB;;CAiB7B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;CAE7B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;CAGjC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;CAGpC,CAAC"}
|