@velora-dex/widget 0.0.12 → 0.0.13
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/drawer.d.ts +1 -1
- package/dist/components/ui/drawer.d.ts.map +1 -1
- package/dist/components/ui/drawer.js +1 -1
- package/dist/components/ui/drawer.js.map +1 -1
- package/dist/components/ui/dropdown-menu.js +25 -19
- package/dist/components/ui/dropdown-menu.js.map +1 -1
- package/dist/components/ui/vaul/browser.d.ts +8 -0
- package/dist/components/ui/vaul/browser.d.ts.map +1 -0
- package/dist/components/ui/vaul/browser.js +37 -0
- package/dist/components/ui/vaul/browser.js.map +1 -0
- package/dist/components/ui/vaul/constants.d.ts +12 -0
- package/dist/components/ui/vaul/constants.d.ts.map +1 -0
- package/dist/components/ui/vaul/constants.js +24 -0
- package/dist/components/ui/vaul/constants.js.map +1 -0
- package/dist/components/ui/vaul/context.d.ts +38 -0
- package/dist/components/ui/vaul/context.d.ts.map +1 -0
- package/dist/components/ui/vaul/context.js +72 -0
- package/dist/components/ui/vaul/context.js.map +1 -0
- package/dist/components/ui/vaul/helpers.d.ts +17 -0
- package/dist/components/ui/vaul/helpers.d.ts.map +1 -0
- package/dist/components/ui/vaul/helpers.js +87 -0
- package/dist/components/ui/vaul/helpers.js.map +1 -0
- package/dist/components/ui/vaul/index.d.ts +140 -0
- package/dist/components/ui/vaul/index.d.ts.map +1 -0
- package/dist/components/ui/vaul/index.js +807 -0
- package/dist/components/ui/vaul/index.js.map +1 -0
- package/dist/components/ui/vaul/types.d.ts +7 -0
- package/dist/components/ui/vaul/types.d.ts.map +1 -0
- package/dist/components/ui/vaul/use-composed-refs.d.ts +14 -0
- package/dist/components/ui/vaul/use-composed-refs.d.ts.map +1 -0
- package/dist/components/ui/vaul/use-composed-refs.js +28 -0
- package/dist/components/ui/vaul/use-composed-refs.js.map +1 -0
- package/dist/components/ui/vaul/use-controllable-state.d.ts +9 -0
- package/dist/components/ui/vaul/use-controllable-state.d.ts.map +1 -0
- package/dist/components/ui/vaul/use-controllable-state.js +134 -0
- package/dist/components/ui/vaul/use-controllable-state.js.map +1 -0
- package/dist/components/ui/vaul/use-position-fixed.d.ts +19 -0
- package/dist/components/ui/vaul/use-position-fixed.d.ts.map +1 -0
- package/dist/components/ui/vaul/use-position-fixed.js +109 -0
- package/dist/components/ui/vaul/use-position-fixed.js.map +1 -0
- package/dist/components/ui/vaul/use-prevent-scroll.d.ts +18 -0
- package/dist/components/ui/vaul/use-prevent-scroll.d.ts.map +1 -0
- package/dist/components/ui/vaul/use-prevent-scroll.js +182 -0
- package/dist/components/ui/vaul/use-prevent-scroll.js.map +1 -0
- package/dist/components/ui/vaul/use-scale-background.d.ts +2 -0
- package/dist/components/ui/vaul/use-scale-background.d.ts.map +1 -0
- package/dist/components/ui/vaul/use-scale-background.js +68 -0
- package/dist/components/ui/vaul/use-scale-background.js.map +1 -0
- package/dist/components/ui/vaul/use-snap-points.d.ts +32 -0
- package/dist/components/ui/vaul/use-snap-points.d.ts.map +1 -0
- package/dist/components/ui/vaul/use-snap-points.js +222 -0
- package/dist/components/ui/vaul/use-snap-points.js.map +1 -0
- package/dist/components/web3/AccountButton.d.ts.map +1 -1
- package/dist/components/web3/AccountButton.js +26 -30
- package/dist/components/web3/AccountButton.js.map +1 -1
- package/dist/components/web3/ConnectWallets/index.d.ts.map +1 -1
- package/dist/components/web3/ConnectWallets/index.js +12 -64
- package/dist/components/web3/ConnectWallets/index.js.map +1 -1
- package/dist/components/widget/AppHeader/ActivityButton.d.ts +2 -0
- package/dist/components/widget/AppHeader/ActivityButton.d.ts.map +1 -0
- package/dist/components/widget/AppHeader/ActivityButton.js +46 -0
- package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -0
- package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/AppHeader.js +35 -29
- package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
- package/dist/components/widget/Drawer/index.d.ts +1 -1
- package/dist/components/widget/Drawer/index.d.ts.map +1 -1
- package/dist/components/widget/Drawer/index.js +37 -30
- package/dist/components/widget/Drawer/index.js.map +1 -1
- package/dist/components/widget/Informative/Informative.d.ts +7 -0
- package/dist/components/widget/Informative/Informative.d.ts.map +1 -0
- package/dist/components/widget/Informative/Informative.js +33 -0
- package/dist/components/widget/Informative/Informative.js.map +1 -0
- package/dist/components/widget/PoweredBy/PoweredBy.d.ts +2 -0
- package/dist/components/widget/PoweredBy/PoweredBy.d.ts.map +1 -0
- package/dist/components/widget/PoweredBy/PoweredBy.js +31 -0
- package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -0
- package/dist/components/widget/PoweredBy/assets/velora.svg.js +12 -0
- package/dist/components/widget/PoweredBy/assets/velora.svg.js.map +1 -0
- package/dist/components/widget/ReceiverAddress/ReceiverAddress.js +35 -39
- package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.js +55 -65
- package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.d.ts.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js +1 -0
- package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
- package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
- package/dist/components/widget/TokenInput/index.js +133 -103
- package/dist/components/widget/TokenInput/index.js.map +1 -1
- package/dist/components/widget/TokenInput/types.d.ts +4 -2
- package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/Stepper.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/Stepper.js +38 -3
- package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
- package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts +2 -1
- package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/WrapEthDrawerButton.js +30 -29
- package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
- package/dist/hooks/gas/config.d.ts +6 -0
- package/dist/hooks/gas/config.d.ts.map +1 -0
- package/dist/hooks/gas/config.js +53 -0
- package/dist/hooks/gas/config.js.map +1 -0
- package/dist/hooks/gas/types.d.ts +43 -0
- package/dist/hooks/gas/types.d.ts.map +1 -0
- package/dist/hooks/gas/useGasPrices.d.ts +7 -0
- package/dist/hooks/gas/useGasPrices.d.ts.map +1 -0
- package/dist/hooks/gas/useGasPrices.js +118 -0
- package/dist/hooks/gas/useGasPrices.js.map +1 -0
- package/dist/hooks/gas/utils.d.ts +8 -0
- package/dist/hooks/gas/utils.d.ts.map +1 -0
- package/dist/hooks/gas/utils.js +21 -0
- package/dist/hooks/gas/utils.js.map +1 -0
- package/dist/hooks/getCode/useIsAccountContract.d.ts +2 -0
- package/dist/hooks/getCode/useIsAccountContract.d.ts.map +1 -0
- package/dist/hooks/getCode/useIsAccountContract.js +34 -0
- package/dist/hooks/getCode/useIsAccountContract.js.map +1 -0
- package/dist/hooks/permit/hooks/useGetPermitInfo.d.ts +27 -0
- package/dist/hooks/permit/hooks/useGetPermitInfo.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useGetPermitInfo.js +98 -0
- package/dist/hooks/permit/hooks/useGetPermitInfo.js.map +1 -0
- package/dist/hooks/permit/hooks/useGetSafePermitInfo.d.ts +31 -0
- package/dist/hooks/permit/hooks/useGetSafePermitInfo.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useGetSafePermitInfo.js +129 -0
- package/dist/hooks/permit/hooks/useGetSafePermitInfo.js.map +1 -0
- package/dist/hooks/permit/hooks/usePermit1Nonce.d.ts +38 -0
- package/dist/hooks/permit/hooks/usePermit1Nonce.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/usePermit1Nonce.js +153 -0
- package/dist/hooks/permit/hooks/usePermit1Nonce.js.map +1 -0
- package/dist/hooks/permit/hooks/useSignArbitraryTypedData.d.ts +18 -0
- package/dist/hooks/permit/hooks/useSignArbitraryTypedData.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useSignArbitraryTypedData.js +109 -0
- package/dist/hooks/permit/hooks/useSignArbitraryTypedData.js.map +1 -0
- package/dist/hooks/permit/hooks/useSignPermit.d.ts +13 -0
- package/dist/hooks/permit/hooks/useSignPermit.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useSignPermit.js +103 -0
- package/dist/hooks/permit/hooks/useSignPermit.js.map +1 -0
- package/dist/hooks/permit/hooks/useSignTokenFromPermit1.d.ts +50 -0
- package/dist/hooks/permit/hooks/useSignTokenFromPermit1.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useSignTokenFromPermit1.js +338 -0
- package/dist/hooks/permit/hooks/useSignTokenFromPermit1.js.map +1 -0
- package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.d.ts +10 -0
- package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.js +69 -0
- package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.js.map +1 -0
- package/dist/hooks/permit/hooks/useTokenFromPermitInfo.d.ts +10 -0
- package/dist/hooks/permit/hooks/useTokenFromPermitInfo.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useTokenFromPermitInfo.js +63 -0
- package/dist/hooks/permit/hooks/useTokenFromPermitInfo.js.map +1 -0
- package/dist/hooks/permit/hooks/useTryToSignPermit1.d.ts +16 -0
- package/dist/hooks/permit/hooks/useTryToSignPermit1.d.ts.map +1 -0
- package/dist/hooks/permit/hooks/useTryToSignPermit1.js +94 -0
- package/dist/hooks/permit/hooks/useTryToSignPermit1.js.map +1 -0
- package/dist/hooks/permit/utils/abi.d.ts +219 -0
- package/dist/hooks/permit/utils/abi.d.ts.map +1 -0
- package/dist/hooks/permit/utils/abi.js +204 -0
- package/dist/hooks/permit/utils/abi.js.map +1 -0
- package/dist/hooks/permit/utils/constants.d.ts +224 -0
- package/dist/hooks/permit/utils/constants.d.ts.map +1 -0
- package/dist/hooks/permit/utils/constants.js +229 -0
- package/dist/hooks/permit/utils/constants.js.map +1 -0
- package/dist/hooks/permit/utils/construct.d.ts +161 -0
- package/dist/hooks/permit/utils/construct.d.ts.map +1 -0
- package/dist/hooks/permit/utils/construct.js +227 -0
- package/dist/hooks/permit/utils/construct.js.map +1 -0
- package/dist/hooks/permit/utils/detect.d.ts +35 -0
- package/dist/hooks/permit/utils/detect.d.ts.map +1 -0
- package/dist/hooks/permit/utils/detect.js +241 -0
- package/dist/hooks/permit/utils/detect.js.map +1 -0
- package/dist/hooks/permit/utils/domainSeparator.d.ts +44 -0
- package/dist/hooks/permit/utils/domainSeparator.d.ts.map +1 -0
- package/dist/hooks/permit/utils/domainSeparator.js +216 -0
- package/dist/hooks/permit/utils/domainSeparator.js.map +1 -0
- package/dist/hooks/permit/utils/encodeArgs.d.ts +11 -0
- package/dist/hooks/permit/utils/encodeArgs.d.ts.map +1 -0
- package/dist/hooks/permit/utils/encodeArgs.js +29 -0
- package/dist/hooks/permit/utils/encodeArgs.js.map +1 -0
- package/dist/hooks/permit/utils/trySignPermit1.d.ts +42 -0
- package/dist/hooks/permit/utils/trySignPermit1.d.ts.map +1 -0
- package/dist/hooks/permit/utils/trySignPermit1.js +283 -0
- package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -0
- package/dist/hooks/permit/utils/types.d.ts +77 -0
- package/dist/hooks/permit/utils/types.d.ts.map +1 -0
- package/dist/hooks/permit/utils/utils.d.ts +15 -0
- package/dist/hooks/permit/utils/utils.d.ts.map +1 -0
- package/dist/hooks/permit/utils/utils.js +44 -0
- package/dist/hooks/permit/utils/utils.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.d.ts +1 -1
- package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js +94 -0
- package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -0
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -0
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +43 -29
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +2 -10
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +10 -10
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/types.d.ts +15 -0
- package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +2 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +433 -268
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +4 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +2 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js +411 -245
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +4 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/tokens/allowance/types.d.ts +2 -0
- package/dist/hooks/tokens/allowance/types.d.ts.map +1 -1
- package/dist/hooks/tokens/allowance/useGenericTokenAllowance.d.ts +3 -1
- package/dist/hooks/tokens/allowance/useGenericTokenAllowance.d.ts.map +1 -1
- package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js +4 -2
- package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
- package/dist/hooks/tokens/allowance/useTokenAllowance.d.ts +1 -1
- package/dist/hooks/tokens/allowance/useTokenAllowance.d.ts.map +1 -1
- package/dist/hooks/tokens/allowance/useTokenAllowance.js +11 -8
- package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
- package/dist/hooks/tokens/balances/useInvalidateTokenData.d.ts +1 -0
- package/dist/hooks/tokens/balances/useInvalidateTokenData.d.ts.map +1 -1
- package/dist/hooks/tokens/balances/useInvalidateTokenData.js +32 -5
- package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
- package/dist/hooks/txs/mutations/useSendTx.d.ts.map +1 -1
- package/dist/hooks/txs/mutations/useSendTx.js +48 -44
- package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
- package/dist/hooks/useIsCrosschainPossible.d.ts +12 -0
- package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -0
- package/dist/hooks/useIsCrosschainPossible.js +68 -0
- package/dist/hooks/useIsCrosschainPossible.js.map +1 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/utils/delta.d.ts +13 -0
- package/dist/lib/utils/delta.d.ts.map +1 -0
- package/dist/lib/utils/delta.js +35 -0
- package/dist/lib/utils/delta.js.map +1 -0
- package/dist/lib/utils/explorer.d.ts +2 -0
- package/dist/lib/utils/explorer.d.ts.map +1 -1
- package/dist/lib/utils/explorer.js +15 -1
- package/dist/lib/utils/explorer.js.map +1 -1
- package/dist/styles.css +317 -5
- package/dist/tokens/defaultTokens.js.map +1 -1
- package/dist/widget/Updaters.d.ts.map +1 -1
- package/dist/widget/Updaters.js +4 -0
- package/dist/widget/Updaters.js.map +1 -1
- package/dist/widget/button/hooks/useWidgetButtonExtraProps.d.ts +9 -0
- package/dist/widget/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -0
- package/dist/widget/button/hooks/useWidgetButtonExtraProps.js +81 -0
- package/dist/widget/button/hooks/useWidgetButtonExtraProps.js.map +1 -0
- package/dist/widget/index.d.ts.map +1 -1
- package/dist/widget/index.js +302 -259
- package/dist/widget/index.js.map +1 -1
- package/dist/widget/inputs/hooks/types.d.ts +4 -0
- package/dist/widget/inputs/hooks/types.d.ts.map +1 -0
- package/dist/widget/inputs/hooks/useTokenFromInputProps.d.ts +3 -1
- package/dist/widget/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/widget/inputs/hooks/useTokenFromInputProps.js +160 -99
- package/dist/widget/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/widget/inputs/hooks/useTokenToInputProps.d.ts +2 -1
- package/dist/widget/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/widget/inputs/hooks/useTokenToInputProps.js +136 -105
- package/dist/widget/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTokenFromInputProps.js","sources":["../../../../src/widget/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import { useDialogAtom } from \"@/components/widget/Dialog/state/dialogAtom\";\nimport type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useTokenFromAtom } from \"../state/selectedTokenAtom\";\nimport { supportedChainIds } from \"@/lib/web3/wagmi/constants\";\nimport { useChainId, useSwitchChain } from \"wagmi\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useAtom, useSetAtom } from \"jotai\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/widget/constants\";\nimport { useIsInsufficientTokenBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport type { NumericFormatProps } from \"react-number-format\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/widget/state/currentSwapInputAtom\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n};\n\nconst useTokenFromAmountProps = (): {\n amount: string;\n token: Token;\n onAmountChange: NumericFormatProps[\"onValueChange\"];\n} => {\n const tokenFrom = useTokenFromAtom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n return {\n amount: amountValue,\n token: tokenFrom,\n // usdEstimation: 99.5, @TODO\n onAmountChange: (values) => {\n console.log(\"TokenFrom::onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput) => {\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: swapModeToSpender[swapMode],\n amountToApproveInWei: amountWei,\n });\n\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei: amountWei,\n });\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useExtraProps = ({ isPriceLoading }: { isPriceLoading?: boolean }) => {\n const { showSelectTokenDialog } = useDialogAtom();\n\n const appChainId = useChainId();\n\n const { switchChain } = useSwitchChain();\n\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n\n return {\n networkSwitcherProps: {\n networks: supportedChainIds,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId: SupportedChainId) => switchChain({ chainId }),\n },\n onTokenButtonClick: () => {\n showSelectTokenDialog({\n tokenType: \"from\",\n });\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentSwapInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps();\n\n const amountWei =\n override?.amountWei ??\n parseUnits(\n tokenFromAmounts.amount,\n tokenFromAmounts.token.decimals\n ).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFromAmounts.token.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFromAmounts.token,\n });\n const extraProps = useExtraProps({ isPriceLoading });\n\n return {\n ...tokenFromAmounts,\n amount,\n ...tokenConditionalProps,\n ...extraProps,\n };\n};\n"],"names":["useTokenFromAmountProps","$","_c","tokenFrom","useTokenFromAtom","amountValue","setAmountValue","useAtom","payInputAmountAtom","t0","values","console","log","value","t1","amount","token","onAmountChange","useTokenConditionalProps","amountWei","swapMode","swapModeToSpender","t2","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","t3","requiredBalanceWei","isInsufficientBalance","useIsInsufficientTokenBalance","t4","needsApproval","t5","lockIcon","t6","shouldDisplay","t7","tokenBadgePropsOverride","insufficientBalanceMessageProps","useExtraProps","isPriceLoading","showSelectTokenDialog","useDialogAtom","appChainId","useChainId","switchChain","useSwitchChain","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","side","useSwapSide","isLoading","chainId","networks","supportedChainIds","selectedNetwork","allOption","onSelect","tokenType","Symbol","for","networkSwitcherProps","onTokenButtonClick","onFocus","label","useTokenFromInputProps","activeSwapMode","override","tokenFromAmounts","parseUnits","decimals","toString","formatUnits","BigInt","tokenConditionalProps","extraProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useTokenFromInputProps.js","sources":["../../../../src/widget/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useTokenFromAtom } from \"../state/selectedTokenAtom\";\nimport { supportedChainIds } from \"@/lib/web3/wagmi/constants\";\nimport { useChainId, useSwitchChain } from \"wagmi\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useAtom, useSetAtom } from \"jotai\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/widget/constants\";\nimport { useIsInsufficientTokenBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/widget/state/currentSwapInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { TokenInputExtraProps, TokenInputAmountProps } from \"./types\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n price?: DeltaOrMarketPrice;\n};\n\nconst useTokenFromAmountProps = ({\n price,\n}: {\n price?: DeltaOrMarketPrice;\n}): MarkRequired<TokenInputAmountProps, \"token\"> => {\n const tokenFrom = useTokenFromAtom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n return {\n amount: amountValue,\n token: tokenFrom,\n usdEstimation: price?.srcUSD,\n onAmountChange: (values) => {\n console.log(\"TokenFrom::onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: swapModeToSpender[swapMode],\n amountToApproveInWei: amountWei,\n });\n\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei: amountWei,\n });\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useExtraProps = ({\n tokenFrom,\n isPriceLoading,\n price,\n}: {\n price?: DeltaOrMarketPrice;\n isPriceLoading?: boolean;\n tokenFrom: Token;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const { switchChain } = useSwitchChain();\n\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n const setPayInputAmount = useSetAtom(payInputAmountAtom);\n\n const side = useSwapSide();\n\n const { balanceUnit } = useTokenBalance({ token: tokenFrom });\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance && (!isETH(tokenFrom) || !!price);\n\n return {\n networkSwitcherProps: {\n networks: supportedChainIds,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId: SupportedChainId) => switchChain({ chainId }),\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentSwapInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n showMaxButton,\n onMaxClick: () => {\n setCurrentSwapInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n const gasCost = price?.gasCost; // gasLimit\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n\n if (gasCost && gasPriceMultiplier) {\n const gasFeeETH = Big(gasCost)\n // have to add extra 200k because instant multiplier is not accurate enough\n .plus(200000)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n price,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps({\n price,\n });\n\n const amountWei =\n override?.amountWei ??\n parseUnits(\n tokenFromAmounts.amount,\n tokenFromAmounts.token.decimals\n ).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFromAmounts.token.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFromAmounts.token,\n });\n const extraProps = useExtraProps({\n isPriceLoading,\n tokenFrom: tokenFromAmounts.token,\n price,\n });\n\n return {\n ...tokenFromAmounts,\n amount,\n ...tokenConditionalProps,\n ...extraProps,\n };\n};\n"],"names":["useTokenFromAmountProps","t0","$","_c","price","tokenFrom","useTokenFromAtom","amountValue","setAmountValue","useAtom","payInputAmountAtom","t1","srcUSD","t2","values","console","log","value","t3","amount","token","usdEstimation","onAmountChange","useTokenConditionalProps","amountWei","swapMode","swapModeToSpender","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","requiredBalanceWei","isInsufficientBalance","useIsInsufficientTokenBalance","t4","needsApproval","t5","lockIcon","t6","shouldDisplay","t7","tokenBadgePropsOverride","insufficientBalanceMessageProps","useExtraProps","isPriceLoading","appChainId","useChainId","switchChain","useSwitchChain","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","setPayInputAmount","side","useSwapSide","balanceUnit","useTokenBalance","isLoading","data","gasPrices","useGasPrices","hasBalance","showMaxButton","isETH","chainId","networks","supportedChainIds","selectedNetwork","allOption","onSelect","Symbol","for","legacyPrices","gasCost","gasPriceMultiplier","instant","gasFeeETH","Big","plus","mul","div","balanceWithDeductedGas","minus","toString","t8","networkSwitcherProps","tokenType","onFocus","label","onMaxClick","useTokenFromInputProps","activeSwapMode","override","tokenFromAmounts","parseUnits","decimals","formatUnits","BigInt","tokenConditionalProps","extraProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,MAAMA,0BAA0BC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC;AAAAA,GAAA,GAAAH,EAAAA;AAK/B,EAAA,MAAAI,YAAkBC,gBAAAA,EAAiB;AAEnC,EAAA,MAAA,CAAAC,WAAAA,EAAAC,cAAA,CAAA,GAAsCC,QAAAC,kBAA0B,CAAA;AAK/C,EAAA,MAAAC,KAAAP,KAAAA,EAAKQ,MAAAA;AAAQ,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAAM,cAAAA,EAAA;AACZK,IAAAA,EAAAA,GAAAC,CAAAA,MAAAA,KAAA;AACdC,MAAAA,OAAAA,CAAAC,GAAAA,CAAY,qCAAqCF,MAAM,CAAA;AACvDN,MAAAA,cAAAA,CAAeM,OAAMG,KAAM,CAAA;AAAA,KAAC;AAC7Bf,IAAAA,CAAAA,MAAAM,cAAAA;AAAAN,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAhB,CAAAA,CAAA,CAAA,CAAA,KAAAK,WAAAA,IAAAL,EAAA,CAAA,CAAA,KAAAS,EAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAW,EAAAA,IAAAX,CAAAA,QAAAG,SAAAA,EAAA;AAPIa,IAAAA,EAAAA,GAAA;AAAA,MAAAC,MAAAA,EACGZ,WAAAA;AAAAA,MAAWa,KAAAA,EACZf,SAAAA;AAAAA,MAASgB,aAAAA,EACDV,EAAAA;AAAAA,MAAaW,cAAAA,EACZT;AAAAA,KAGf;AACFX,IAAAA,CAAAA,MAAAK,WAAAA;AAAAL,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAG,SAAAA;AAAAH,IAAAA,CAAAA,MAAAgB,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,OARMgB,EAAAA;AAQN,CAAA;AASH,MAAMK,2BAA2BtB,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAqB,SAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAApB;AAAAA,GAAA,GAAAJ,EAAAA;AAYT,EAAA,MAAAU,EAAAA,GAAAe,kBAAkBD,QAAQ,CAAA;AAAC,EAAA,IAAAZ,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAsB,SAAAA,IAAAtB,CAAAA,QAAAS,EAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAG,SAAAA,EAAA;AAFFQ,IAAAA,EAAAA,GAAA;AAAA,MAAAO,KAAAA,EACvCf,SAAAA;AAAAA,MAASsB,mBAAAA,EACKhB,EAAAA;AAAAA,MAA2BiB,oBAAAA,EAC1BJ;AAAAA,KAAS;AAChCtB,IAAAA,CAAAA,MAAAsB,SAAAA;AAAAtB,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAG,SAAAA;AAAAH,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA;AAJD,EAAA,MAAA2B,cAAAA,GAAuBC,yBAAyBjB,EAI/C,CAAA;AAAE,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAhB,EAAA,CAAA,CAAA,KAAAsB,aAAAtB,CAAAA,QAAAG,SAAAA,EAAA;AAEyDa,IAAAA,EAAAA,GAAA;AAAA,MAAAE,KAAAA,EACnDf,SAAAA;AAAAA,MAAS0B,kBAAAA,EACIP;AAAAA,KAAS;AAC9BtB,IAAAA,CAAAA,MAAAsB,SAAAA;AAAAtB,IAAAA,CAAAA,MAAAG,SAAAA;AAAAH,IAAAA,CAAAA,MAAAgB,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,CAAA,CAAA;AAAA;AAHD,EAAA,MAAA8B,qBAAAA,GAA8BC,8BAA8Bf,EAG3D,CAAA;AAIa,EAAA,MAAAgB,EAAAA,GAAA,CAACF,qBAAAA,IAAyBH,cAAAA,CAAcM,aAAAA;AAAc,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAlC,CAAAA,QAAAgC,EAAAA,EAAA;AADzCE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,QAAAA,EACbH;AAAAA,KAAsD;AACjEhC,IAAAA,CAAAA,MAAAgC,EAAAA;AAAAhC,IAAAA,CAAAA,MAAAkC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlC,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAoC,EAAAA;AAAA,EAAA,IAAApC,EAAA,CAAA,CAAA,KAAA8B,yBAAA9B,CAAAA,SAAAG,SAAAA,EAAA;AACgCiC,IAAAA,EAAAA,GAAA;AAAA,MAAAlB,KAAAA,EACxBf,SAAAA;AAAAA,MAASkC,aAAAA,EACDP;AAAAA,KAAqB;AACrC9B,IAAAA,CAAAA,MAAA8B,qBAAAA;AAAA9B,IAAAA,CAAAA,OAAAG,SAAAA;AAAAH,IAAAA,CAAAA,OAAAoC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApC,EAAA,EAAA,CAAA;AAAA;AAAA,EAAA,IAAAsC,EAAAA;AAAA,EAAA,IAAAtC,EAAA,EAAA,CAAA,KAAAkC,MAAAlC,CAAAA,SAAAoC,EAAAA,EAAA;AAPIE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,uBAAAA,EACoBL,EAAAA;AAAAA,MAExBM,+BAAAA,EACgCJ;AAAAA,KAGhC;AACFpC,IAAAA,CAAAA,OAAAkC,EAAAA;AAAAlC,IAAAA,CAAAA,OAAAoC,EAAAA;AAAApC,IAAAA,CAAAA,OAAAsC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAtC,EAAA,EAAA,CAAA;AAAA;AAAA,EAAA,OARMsC,EAAAA;AAQN,CAAA;AAGH,MAAMG,gBAAgB1C,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAE,SAAAA;AAAAA,IAAAuC,cAAAA;AAAAA,IAAAxC;AAAAA,GAAA,GAAAH,EAAAA;AASrB,EAAA,MAAA4C,aAAmBC,UAAAA,EAAW;AAE9B,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAAwBC,cAAAA,EAAe;AAEvC,EAAA,MAAAC,mBAAAA,GAA4BC,WAAAC,oBAA+B,CAAA;AAC3D,EAAA,MAAAC,iBAAAA,GAA0BF,WAAAxC,kBAA6B,CAAA;AAEvD,EAAA,MAAA2C,OAAaC,WAAAA,EAAY;AAAE,EAAA,IAAA3C,EAAAA;AAAA,EAAA,IAAAT,CAAAA,QAAAG,SAAAA,EAAA;AAEaM,IAAAA,EAAAA,GAAA;AAAA,MAAAS,KAAAA,EAASf;AAAAA,KAAS;AAAEH,IAAAA,CAAAA,MAAAG,SAAAA;AAAAH,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA;AAA5D,EAAA,MAAA;AAAA,IAAAqD;AAAAA,GAAA,GAAwBC,gBAAgB7C,EAAoB,CAAA;AAG5D,EAAA,MAAA8C,SAAAA,GAAkBb,kBAAkBS,IAAAA,KAAS,KAAA;AAE7C,EAAA,MAAA;AAAA,IAAAK,IAAAA,EAAAC;AAAAA,MAA4BC,YAAAA,EAAa;AAEzC,EAAA,MAAAC,UAAAA,GAAmB,CAAA,CAAEN,WAAAA,IAAeA,WAAAA,KAAgB,GAAA;AACpD,EAAA,MAAAO,gBAAsBD,UAAAA,KAAe,CAACE,MAAM1D,SAAS,CAAA,IAAC,CAAA,CAAMD,KAAAA,CAAAA;AAAO,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAA6C,WAAAA,EAAA;AAOrDlC,IAAAA,EAAAA,GAAAmD,aAA+BjB,WAAAA,CAAW;AAAA,MAAAiB;AAAAA,KAAY,CAAA;AAAC9D,IAAAA,CAAAA,MAAA6C,WAAAA;AAAA7C,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAhB,EAAA,CAAA,CAAA,KAAA2C,cAAA3C,CAAAA,QAAAW,EAAAA,EAAA;AAJ7CK,IAAAA,EAAAA,GAAA;AAAA,MAAA+C,QAAAA,EAAAC,iBAAAA;AAAAA,MAAAC,eAAAA,EAEHtB,UAAAA;AAAAA,MAAUuB,SAAAA,EAAA,KAAA;AAAA,MAAAC,QAAAA,EAEjBxD;AAAAA,KAAuD;AAClEX,IAAAA,CAAAA,MAAA2C,UAAAA;AAAA3C,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAgB,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAgC,EAAAA;AAAA,EAAA,IAAAhC,CAAAA,QAAA+C,mBAAAA,EAAA;AAEQf,IAAAA,EAAAA,GAAAA,MAAMe,oBAAoB,MAAM,CAAA;AAAC/C,IAAAA,CAAAA,MAAA+C,mBAAAA;AAAA/C,IAAAA,CAAAA,MAAAgC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhC,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAkC,EAAAA;AAAA,EAAA,IAAAlC,EAAA,CAAA,CAAA,KAAAoE,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGtCnC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,UAAM,QAAA,EAAA,KAAA,EAAG,CAAA;AAAOlC,IAAAA,CAAAA,MAAAkC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlC,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAoC,EAAAA;AAAA,EAAA,IAAApC,EAAA,EAAA,CAAA,KAAAoE,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AADlBjC,IAAAA,EAAAA,mBAAA,IAAA,CAAA,QAAA,EAAA,EACEF,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAAgB,GAAA;AAAA,sBAAC,GAAA,CAAA,MAAA,EAAA,EAAgB,SAAA,EAAA,iBAAA,EAAkB,QAAA,EAAA,IAAA,EAAE;AAAA,KAAA,EAAO,CAAA;AAC3DlC,IAAAA,CAAAA,OAAAoC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApC,EAAA,EAAA,CAAA;AAAA;AAAA,EAAA,IAAAsC,EAAAA;AAAA,EAAA,IAAAtC,CAAAA,CAAA,EAAA,CAAA,KAAAqD,WAAAA,IAAArD,CAAAA,CAAA,EAAA,CAAA,KAAAyD,SAAAA,EAAAa,YAAAA,IAAAtE,CAAAA,CAAA,EAAA,CAAA,KAAA2D,UAAAA,IAAA3D,CAAAA,CAAA,EAAA,CAAA,KAAAE,KAAAA,EAAAqE,OAAAA,IAAAvE,CAAAA,CAAA,EAAA,CAAA,KAAA+C,mBAAAA,IAAA/C,CAAAA,CAAA,EAAA,CAAA,KAAAkD,iBAAAA,IAAAlD,CAAAA,SAAAG,SAAAA,EAAA;AAIOmC,IAAAA,EAAAA,GAAAA,MAAA;AACVS,MAAAA,mBAAAA,CAAoB,MAAM,CAAA;AAAC,MAAA,IAEvBY,UAAAA,EAAU;AAAA,QAAA,IAAA,CACPE,KAAAA,CAAM1D,SAAS,CAAA,EAAC;AACnB+C,UAAAA,iBAAAA,CAAkBG,WAAW,CAAA;AAAC,UAAA;AAAA;AAIhC,QAAA,MAAAkB,UAAgBrE,KAAAA,EAAKqE,OAAAA;AACrB,QAAA,MAAAC,kBAAAA,GAA2Bf,WAASa,YAAAA,CAAAG,OAAAA;AAAuB,QAAA,IAEvDF,WAAWC,kBAAAA,EAAkB;AAC/B,UAAA,MAAAE,SAAAA,GAAkBC,GAAAA,CAAIJ,OAAO,CAAA,CAACK,IAAAA,CAAA,GAEhB,CAAA,CAACC,GAAAA,CACRL,kBAAkB,CAAA,CAACM,GAAAA,IAChB,CAAA;AACV,UAAA,MAAAC,sBAAAA,GAA+BJ,GAAAA,CAAItB,WAAW,CAAA,CAAC2B,MAAON,SAAS,CAAA;AAE/DxB,UAAAA,iBAAAA,CAAkB6B,sBAAAA,CAAsBE,UAAW,CAAA;AAAA;AAAC;AAAA,KAAA;AAGzDjF,IAAAA,CAAAA,OAAAqD,WAAAA;AAAArD,IAAAA,CAAAA,CAAA,EAAA,IAAAyD,SAAAA,EAAAa,YAAAA;AAAAtE,IAAAA,CAAAA,OAAA2D,UAAAA;AAAA3D,IAAAA,CAAAA,CAAA,EAAA,IAAAE,KAAAA,EAAAqE,OAAAA;AAAAvE,IAAAA,CAAAA,OAAA+C,mBAAAA;AAAA/C,IAAAA,CAAAA,OAAAkD,iBAAAA;AAAAlD,IAAAA,CAAAA,OAAAG,SAAAA;AAAAH,IAAAA,CAAAA,OAAAsC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAtC,EAAA,EAAA,CAAA;AAAA;AAAA,EAAA,IAAAkF,EAAAA;AAAA,EAAA,IAAAlF,EAAA,EAAA,CAAA,KAAAuD,aAAAvD,CAAAA,CAAA,EAAA,MAAA4D,aAAAA,IAAA5D,CAAAA,CAAA,EAAA,CAAA,KAAAgB,EAAAA,IAAAhB,EAAA,EAAA,CAAA,KAAAgC,MAAAhC,CAAAA,SAAAsC,EAAAA,EAAA;AAvCI4C,IAAAA,EAAAA,GAAA;AAAA,MAAAC,oBAAAA,EACiBnE,EAAAA;AAAAA,MAKrBoE,SAAAA,EACU,MAAA;AAAA,MAAeC,OAAAA,EACjBrD,EAAAA;AAAAA,MAAiCsD,KAAAA,EAExClD,EAAAA;AAAAA,MAEGmB,SAAAA;AAAAA,MAAAK,aAAAA;AAAAA,MAAA2B,UAAAA,EAIOjD;AAAAA,KAuBX;AACFtC,IAAAA,CAAAA,OAAAuD,SAAAA;AAAAvD,IAAAA,CAAAA,OAAA4D,aAAAA;AAAA5D,IAAAA,CAAAA,OAAAgB,EAAAA;AAAAhB,IAAAA,CAAAA,OAAAgC,EAAAA;AAAAhC,IAAAA,CAAAA,OAAAsC,EAAAA;AAAAtC,IAAAA,CAAAA,OAAAkF,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlF,EAAA,EAAA,CAAA;AAAA;AAAA,EAAA,OAxCMkF,EAAAA;AAwCN,CAAA;AAGI,MAAMM,yBAAyBzF,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAwF,cAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAhD,cAAAA;AAAAA,IAAAxC;AAAAA,GAAA,GAAAH,EAAAA;AAKd,EAAA,IAAAU,EAAAA;AAAA,EAAA,IAAAT,CAAAA,QAAAE,KAAAA,EAAA;AAC0BO,IAAAA,EAAAA,GAAA;AAAA,MAAAP;AAAAA,KAAA;AAEhDF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA;AAFD,EAAA,MAAA2F,gBAAAA,GAAyB7F,wBAAwBW,EAEhD,CAAA;AAAE,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAA0F,QAAAA,EAAApE,aAAAtB,CAAAA,CAAA,CAAA,CAAA,KAAA2F,gBAAAA,CAAA1E,MAAAA,IAAAjB,CAAAA,CAAA,CAAA,CAAA,KAAA2F,iBAAAzE,KAAAA,EAAA;AAGDP,IAAAA,EAAAA,GAAA+E,QAAAA,EAAQpE,aACRsE,UAAAA,CACED,gBAAAA,CAAgB1E,QAChB0E,gBAAAA,CAAgBzE,KAAAA,CAAA2E,QAClB,CAAA,CAACZ,QAAAA,EAAU;AAACjF,IAAAA,CAAAA,CAAA,CAAA,IAAA0F,QAAAA,EAAApE,SAAAA;AAAAtB,IAAAA,CAAAA,CAAA,CAAA,IAAA2F,gBAAAA,CAAA1E,MAAAA;AAAAjB,IAAAA,CAAAA,CAAA,CAAA,IAAA2F,gBAAAA,CAAAzE,KAAAA;AAAAlB,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA;AALd,EAAA,MAAAsB,SAAAA,GACEX,EAAAA;AAIa,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAhB,CAAAA,CAAA,CAAA,CAAA,KAAA0F,QAAAA,IAAA1F,CAAAA,CAAA,CAAA,CAAA,KAAA2F,gBAAAA,CAAA1E,MAAAA,IAAAjB,CAAAA,CAAA,CAAA,CAAA,KAAA2F,iBAAAzE,KAAAA,EAAA;AAEAF,IAAAA,EAAAA,GAAA0E,QAAAA,EAAQpE,SAAAA,GACnBwE,WAAAA,CAAYC,MAAAA,CAAOL,QAAAA,CAAQpE,SAAU,CAAA,EAAGqE,gBAAAA,CAAgBzE,KAAAA,CAAA2E,QAAe,CAAA,GACvEF,gBAAAA,CAAgB1E,MAAAA;AAAOjB,IAAAA,CAAAA,MAAA0F,QAAAA;AAAA1F,IAAAA,CAAAA,CAAA,CAAA,IAAA2F,gBAAAA,CAAA1E,MAAAA;AAAAjB,IAAAA,CAAAA,CAAA,CAAA,IAAA2F,gBAAAA,CAAAzE,KAAAA;AAAAlB,IAAAA,CAAAA,MAAAgB,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,CAAA,CAAA;AAAA;AAF3B,EAAA,MAAAiB,MAAAA,GAAeD,EAAAA;AAEa,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAhC,CAAAA,CAAA,EAAA,CAAA,KAAAyF,cAAAA,IAAAzF,CAAAA,CAAA,EAAA,CAAA,KAAAsB,SAAAA,IAAAtB,CAAAA,CAAA,EAAA,CAAA,KAAA2F,gBAAAA,CAAAzE,KAAAA,EAAA;AAE2Bc,IAAAA,EAAAA,GAAA;AAAA,MAAAV,SAAAA;AAAAA,MAAAC,QAAAA,EAE3CkE,cAAAA;AAAAA,MAActF,WACbwF,gBAAAA,CAAgBzE;AAAAA,KAAA;AAC5BlB,IAAAA,CAAAA,OAAAyF,cAAAA;AAAAzF,IAAAA,CAAAA,OAAAsB,SAAAA;AAAAtB,IAAAA,CAAAA,CAAA,EAAA,IAAA2F,gBAAAA,CAAAzE,KAAAA;AAAAlB,IAAAA,CAAAA,OAAAgC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhC,EAAA,EAAA,CAAA;AAAA;AAJD,EAAA,MAAAgG,qBAAAA,GAA8B3E,yBAAyBW,EAItD,CAAA;AAAE,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAlC,CAAAA,CAAA,EAAA,CAAA,KAAA0C,cAAAA,IAAA1C,CAAAA,CAAA,EAAA,CAAA,KAAAE,KAAAA,IAAAF,CAAAA,CAAA,EAAA,CAAA,KAAA2F,gBAAAA,CAAAzE,KAAAA,EAAA;AAC8BgB,IAAAA,EAAAA,GAAA;AAAA,MAAAQ,cAAAA;AAAAA,MAAAvC,WAEpBwF,gBAAAA,CAAgBzE,KAAAA;AAAAA,MAAAhB;AAAAA,KAAA;AAE5BF,IAAAA,CAAAA,OAAA0C,cAAAA;AAAA1C,IAAAA,CAAAA,OAAAE,KAAAA;AAAAF,IAAAA,CAAAA,CAAA,EAAA,IAAA2F,gBAAAA,CAAAzE,KAAAA;AAAAlB,IAAAA,CAAAA,OAAAkC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlC,EAAA,EAAA,CAAA;AAAA;AAJD,EAAA,MAAAiG,UAAAA,GAAmBxD,cAAcP,EAIhC,CAAA;AAAE,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAApC,CAAAA,CAAA,EAAA,CAAA,KAAAiB,MAAAA,IAAAjB,EAAA,EAAA,CAAA,KAAAiG,UAAAA,IAAAjG,CAAAA,CAAA,EAAA,CAAA,KAAAgG,qBAAAA,IAAAhG,CAAAA,SAAA2F,gBAAAA,EAAA;AAEIvD,IAAAA,EAAAA,GAAA;AAAA,MAAA,GACFuD,gBAAAA;AAAAA,MAAgB1E,MAAAA;AAAAA,MAAA,GAEhB+E,qBAAAA;AAAAA,MAAqB,GACrBC;AAAAA,KAAU;AACdjG,IAAAA,CAAAA,OAAAiB,MAAAA;AAAAjB,IAAAA,CAAAA,OAAAiG,UAAAA;AAAAjG,IAAAA,CAAAA,OAAAgG,qBAAAA;AAAAhG,IAAAA,CAAAA,OAAA2F,gBAAAA;AAAA3F,IAAAA,CAAAA,OAAAoC,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApC,EAAA,EAAA,CAAA;AAAA;AAAA,EAAA,OALMoC,EAAAA;AAKN;;;;"}
|
|
@@ -6,8 +6,9 @@ type UseTokenToInputInput = {
|
|
|
6
6
|
};
|
|
7
7
|
price?: DeltaOrMarketPrice;
|
|
8
8
|
priceMode: "market" | "delta";
|
|
9
|
+
priceError: Error | null;
|
|
9
10
|
isPriceLoading?: boolean;
|
|
10
11
|
};
|
|
11
|
-
export declare const useTokenToInputProps: ({ override, isPriceLoading, priceMode, price, }: UseTokenToInputInput) => TokenInputProps;
|
|
12
|
+
export declare const useTokenToInputProps: ({ override, isPriceLoading, priceMode, price, priceError, }: UseTokenToInputInput) => TokenInputProps;
|
|
12
13
|
export {};
|
|
13
14
|
//# sourceMappingURL=useTokenToInputProps.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/widget/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/widget/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAiB5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAMpE,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAyIF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eAoBzB,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { d as distExports } from '../../../_virtual/index.js';
|
|
3
|
-
import {
|
|
4
|
-
import { useTokenToAtom } from '../state/selectedTokenAtom.js';
|
|
3
|
+
import { useTokenToAtom, useTokenFromAtom } from '../state/selectedTokenAtom.js';
|
|
5
4
|
import { chainToAtom } from '../../state/chainToAtom.js';
|
|
6
5
|
import { useAtom, useSetAtom } from 'jotai';
|
|
7
6
|
import { useAvailableCrosses } from '../../../hooks/useAvailableCrosses.js';
|
|
@@ -14,6 +13,8 @@ import { useIsCrossChain } from '../../state/isCrosschainAtom.js';
|
|
|
14
13
|
import { useGlobalDeltaEnabled } from '../../../hooks/useGlobalDeltaEnabled.js';
|
|
15
14
|
import { getDestAmountAfterFee } from '../../../lib/utils/price.js';
|
|
16
15
|
import { calculateFeeUSD } from '../../../lib/utils/fee.js';
|
|
16
|
+
import { parseDeltaApiError } from '../../../lib/utils/delta.js';
|
|
17
|
+
import { useIsCrosschainPossible } from '../../../hooks/useIsCrosschainPossible.js';
|
|
17
18
|
|
|
18
19
|
globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
|
|
19
20
|
cache: /* @__PURE__ */ new Map(),
|
|
@@ -25,53 +26,58 @@ globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
|
|
|
25
26
|
return inst;
|
|
26
27
|
}
|
|
27
28
|
};
|
|
28
|
-
const useTokenToAmountProps = () => {
|
|
29
|
-
const $ = distExports.c(
|
|
29
|
+
const useTokenToAmountProps = (t0) => {
|
|
30
|
+
const $ = distExports.c(8);
|
|
31
|
+
const {
|
|
32
|
+
price
|
|
33
|
+
} = t0;
|
|
30
34
|
const tokenTo = useTokenToAtom();
|
|
31
35
|
const isCrossChain = useIsCrossChain();
|
|
32
36
|
const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);
|
|
33
|
-
|
|
37
|
+
const t1 = price?.destUSD;
|
|
38
|
+
let t2;
|
|
34
39
|
if ($[0] !== setAmountValue) {
|
|
35
|
-
|
|
40
|
+
t2 = (values) => {
|
|
36
41
|
console.log("TokenTo::onAmountChange::values", values);
|
|
37
42
|
setAmountValue(values.value);
|
|
38
43
|
};
|
|
39
44
|
$[0] = setAmountValue;
|
|
40
|
-
$[1] =
|
|
45
|
+
$[1] = t2;
|
|
41
46
|
} else {
|
|
42
|
-
|
|
47
|
+
t2 = $[1];
|
|
43
48
|
}
|
|
44
|
-
let
|
|
45
|
-
if ($[2] !== amountValue || $[3] !== isCrossChain || $[4] !==
|
|
46
|
-
|
|
49
|
+
let t3;
|
|
50
|
+
if ($[2] !== amountValue || $[3] !== isCrossChain || $[4] !== t1 || $[5] !== t2 || $[6] !== tokenTo) {
|
|
51
|
+
t3 = {
|
|
52
|
+
usdEstimation: t1,
|
|
47
53
|
amount: amountValue,
|
|
48
54
|
token: tokenTo,
|
|
49
55
|
readOnly: isCrossChain,
|
|
50
|
-
onAmountChange:
|
|
56
|
+
onAmountChange: t2
|
|
51
57
|
};
|
|
52
58
|
$[2] = amountValue;
|
|
53
59
|
$[3] = isCrossChain;
|
|
54
|
-
$[4] =
|
|
55
|
-
$[5] =
|
|
56
|
-
$[6] =
|
|
60
|
+
$[4] = t1;
|
|
61
|
+
$[5] = t2;
|
|
62
|
+
$[6] = tokenTo;
|
|
63
|
+
$[7] = t3;
|
|
57
64
|
} else {
|
|
58
|
-
|
|
65
|
+
t3 = $[7];
|
|
59
66
|
}
|
|
60
|
-
return
|
|
67
|
+
return t3;
|
|
61
68
|
};
|
|
62
69
|
const useExtraProps = (t0) => {
|
|
63
|
-
const $ = distExports.c(
|
|
70
|
+
const $ = distExports.c(31);
|
|
64
71
|
const {
|
|
65
72
|
isPriceLoading,
|
|
66
73
|
priceMode,
|
|
74
|
+
priceError,
|
|
67
75
|
price,
|
|
68
76
|
token
|
|
69
77
|
} = t0;
|
|
70
|
-
const {
|
|
71
|
-
showSelectTokenDialog
|
|
72
|
-
} = useDialogAtom();
|
|
73
78
|
const chainId = useChainId();
|
|
74
79
|
const [chainTo, setChainTo] = useAtom(chainToAtom);
|
|
80
|
+
const tokenFrom = useTokenFromAtom();
|
|
75
81
|
let t1;
|
|
76
82
|
if ($[0] !== chainId) {
|
|
77
83
|
t1 = {
|
|
@@ -99,13 +105,34 @@ const useExtraProps = (t0) => {
|
|
|
99
105
|
enabledInSettings: deltaEnabledInSettings,
|
|
100
106
|
enabledOnCurrentChain: deltaEnabledOnCurrentChain
|
|
101
107
|
} = useGlobalDeltaEnabled();
|
|
108
|
+
let t4;
|
|
109
|
+
if ($[4] !== chainId || $[5] !== chainTo || $[6] !== tokenFrom.address) {
|
|
110
|
+
t4 = {
|
|
111
|
+
fromChainId: chainId,
|
|
112
|
+
toChainId: chainTo,
|
|
113
|
+
tokenAddress: tokenFrom.address
|
|
114
|
+
};
|
|
115
|
+
$[4] = chainId;
|
|
116
|
+
$[5] = chainTo;
|
|
117
|
+
$[6] = tokenFrom.address;
|
|
118
|
+
$[7] = t4;
|
|
119
|
+
} else {
|
|
120
|
+
t4 = $[7];
|
|
121
|
+
}
|
|
122
|
+
const {
|
|
123
|
+
isCrosschainPossible,
|
|
124
|
+
isLoading: isLoadingCrosschainAvailability,
|
|
125
|
+
hasTokens,
|
|
126
|
+
tokenSupported
|
|
127
|
+
} = useIsCrosschainPossible(t4);
|
|
128
|
+
const isCrosschain = useIsCrossChain();
|
|
102
129
|
const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);
|
|
103
130
|
const side = useSwapSide();
|
|
104
131
|
const isSell = side === "SELL";
|
|
105
132
|
const isLoading = isPriceLoading && isSell;
|
|
106
|
-
let
|
|
107
|
-
if ($[
|
|
108
|
-
|
|
133
|
+
let t5;
|
|
134
|
+
if ($[8] !== isSell || $[9] !== price || $[10] !== priceMode || $[11] !== token) {
|
|
135
|
+
t5 = isSell && price && token && (priceMode === "delta" || priceMode === "market" && price.partnerFee > 0) ? {
|
|
109
136
|
amountWei: getDestAmountAfterFee({
|
|
110
137
|
price,
|
|
111
138
|
priceMode
|
|
@@ -115,147 +142,151 @@ const useExtraProps = (t0) => {
|
|
|
115
142
|
token,
|
|
116
143
|
priceMode
|
|
117
144
|
} : void 0;
|
|
118
|
-
$[
|
|
119
|
-
$[
|
|
120
|
-
$[
|
|
121
|
-
$[
|
|
122
|
-
$[
|
|
145
|
+
$[8] = isSell;
|
|
146
|
+
$[9] = price;
|
|
147
|
+
$[10] = priceMode;
|
|
148
|
+
$[11] = token;
|
|
149
|
+
$[12] = t5;
|
|
123
150
|
} else {
|
|
124
|
-
|
|
151
|
+
t5 = $[12];
|
|
125
152
|
}
|
|
126
|
-
const youGetProps =
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
153
|
+
const youGetProps = t5;
|
|
154
|
+
const deltaWarning = parseDeltaApiError(priceError)?.description;
|
|
155
|
+
const crosschainDeltaWarning = !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain ? tokenSupported === false ? "Pay Token isn't supported on Delta" : hasTokens === false ? "Chain selection isn't supported for Crosschain Swap" : void 0 : void 0;
|
|
156
|
+
const warningMessage = priceMode === "delta" ? deltaWarning || crosschainDeltaWarning : void 0;
|
|
157
|
+
let t6;
|
|
158
|
+
if ($[13] !== availableCrosses || $[14] !== chainId || $[15] !== chainTo || $[16] !== deltaEnabledInConfig || $[17] !== deltaEnabledInSettings || $[18] !== deltaEnabledOnCurrentChain || $[19] !== setChainTo) {
|
|
159
|
+
t6 = chainTo !== void 0 ? {
|
|
130
160
|
networks: [chainId].concat(availableCrosses),
|
|
131
161
|
selectedNetwork: chainTo,
|
|
132
162
|
allOption: false,
|
|
133
163
|
onSelect: setChainTo,
|
|
134
164
|
disabled: availableCrosses.length === 0 || !deltaEnabledInConfig || !deltaEnabledInSettings || !deltaEnabledOnCurrentChain
|
|
135
165
|
} : void 0;
|
|
136
|
-
$[
|
|
137
|
-
$[
|
|
138
|
-
$[
|
|
139
|
-
$[
|
|
140
|
-
$[
|
|
141
|
-
$[
|
|
142
|
-
$[
|
|
143
|
-
$[
|
|
166
|
+
$[13] = availableCrosses;
|
|
167
|
+
$[14] = chainId;
|
|
168
|
+
$[15] = chainTo;
|
|
169
|
+
$[16] = deltaEnabledInConfig;
|
|
170
|
+
$[17] = deltaEnabledInSettings;
|
|
171
|
+
$[18] = deltaEnabledOnCurrentChain;
|
|
172
|
+
$[19] = setChainTo;
|
|
173
|
+
$[20] = t6;
|
|
144
174
|
} else {
|
|
145
|
-
|
|
146
|
-
}
|
|
147
|
-
let t6;
|
|
148
|
-
if ($[17] !== showSelectTokenDialog) {
|
|
149
|
-
t6 = () => {
|
|
150
|
-
showSelectTokenDialog({
|
|
151
|
-
tokenType: "to"
|
|
152
|
-
});
|
|
153
|
-
};
|
|
154
|
-
$[17] = showSelectTokenDialog;
|
|
155
|
-
$[18] = t6;
|
|
156
|
-
} else {
|
|
157
|
-
t6 = $[18];
|
|
175
|
+
t6 = $[20];
|
|
158
176
|
}
|
|
159
177
|
let t7;
|
|
160
|
-
if ($[
|
|
178
|
+
if ($[21] !== setCurrentSwapInput) {
|
|
161
179
|
t7 = () => setCurrentSwapInput("to");
|
|
162
|
-
$[
|
|
163
|
-
$[
|
|
180
|
+
$[21] = setCurrentSwapInput;
|
|
181
|
+
$[22] = t7;
|
|
164
182
|
} else {
|
|
165
|
-
t7 = $[
|
|
183
|
+
t7 = $[22];
|
|
166
184
|
}
|
|
167
185
|
let t8;
|
|
168
|
-
if ($[
|
|
186
|
+
if ($[23] === Symbol.for("react.memo_cache_sentinel")) {
|
|
169
187
|
t8 = /* @__PURE__ */ jsx("span", { children: "Receive" });
|
|
170
|
-
$[
|
|
188
|
+
$[23] = t8;
|
|
171
189
|
} else {
|
|
172
|
-
t8 = $[
|
|
190
|
+
t8 = $[23];
|
|
173
191
|
}
|
|
174
192
|
let t9;
|
|
175
|
-
if ($[
|
|
193
|
+
if ($[24] === Symbol.for("react.memo_cache_sentinel")) {
|
|
176
194
|
t9 = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
177
195
|
t8,
|
|
178
196
|
" ",
|
|
179
197
|
/* @__PURE__ */ jsx("span", { className: "text-contrast-5", children: "on" })
|
|
180
198
|
] });
|
|
181
|
-
$[
|
|
199
|
+
$[24] = t9;
|
|
182
200
|
} else {
|
|
183
|
-
t9 = $[
|
|
201
|
+
t9 = $[24];
|
|
184
202
|
}
|
|
185
203
|
let t10;
|
|
186
|
-
if ($[
|
|
204
|
+
if ($[25] !== isLoading || $[26] !== t6 || $[27] !== t7 || $[28] !== warningMessage || $[29] !== youGetProps) {
|
|
187
205
|
t10 = {
|
|
188
|
-
networkSwitcherProps:
|
|
189
|
-
onTokenButtonClick: t6,
|
|
206
|
+
networkSwitcherProps: t6,
|
|
190
207
|
tokenType: "to",
|
|
191
208
|
onFocus: t7,
|
|
192
209
|
label: t9,
|
|
193
210
|
isLoading,
|
|
194
|
-
youGetProps
|
|
211
|
+
youGetProps,
|
|
212
|
+
warningMessage
|
|
195
213
|
};
|
|
196
|
-
$[
|
|
197
|
-
$[
|
|
198
|
-
$[
|
|
199
|
-
$[
|
|
200
|
-
$[
|
|
201
|
-
$[
|
|
214
|
+
$[25] = isLoading;
|
|
215
|
+
$[26] = t6;
|
|
216
|
+
$[27] = t7;
|
|
217
|
+
$[28] = warningMessage;
|
|
218
|
+
$[29] = youGetProps;
|
|
219
|
+
$[30] = t10;
|
|
202
220
|
} else {
|
|
203
|
-
t10 = $[
|
|
221
|
+
t10 = $[30];
|
|
204
222
|
}
|
|
205
223
|
return t10;
|
|
206
224
|
};
|
|
207
225
|
const useTokenToInputProps = (t0) => {
|
|
208
|
-
const $ = distExports.c(
|
|
226
|
+
const $ = distExports.c(16);
|
|
209
227
|
const {
|
|
210
228
|
override,
|
|
211
229
|
isPriceLoading,
|
|
212
230
|
priceMode,
|
|
213
|
-
price
|
|
231
|
+
price,
|
|
232
|
+
priceError
|
|
214
233
|
} = t0;
|
|
215
|
-
const tokenToAmounts = useTokenToAmountProps();
|
|
216
234
|
let t1;
|
|
217
|
-
if ($[0] !==
|
|
235
|
+
if ($[0] !== price) {
|
|
218
236
|
t1 = {
|
|
237
|
+
price
|
|
238
|
+
};
|
|
239
|
+
$[0] = price;
|
|
240
|
+
$[1] = t1;
|
|
241
|
+
} else {
|
|
242
|
+
t1 = $[1];
|
|
243
|
+
}
|
|
244
|
+
const tokenToAmounts = useTokenToAmountProps(t1);
|
|
245
|
+
let t2;
|
|
246
|
+
if ($[2] !== isPriceLoading || $[3] !== price || $[4] !== priceError || $[5] !== priceMode || $[6] !== tokenToAmounts.token) {
|
|
247
|
+
t2 = {
|
|
219
248
|
isPriceLoading,
|
|
220
249
|
priceMode,
|
|
250
|
+
priceError,
|
|
221
251
|
price,
|
|
222
252
|
token: tokenToAmounts.token
|
|
223
253
|
};
|
|
224
|
-
$[
|
|
225
|
-
$[
|
|
226
|
-
$[
|
|
227
|
-
$[
|
|
228
|
-
$[
|
|
254
|
+
$[2] = isPriceLoading;
|
|
255
|
+
$[3] = price;
|
|
256
|
+
$[4] = priceError;
|
|
257
|
+
$[5] = priceMode;
|
|
258
|
+
$[6] = tokenToAmounts.token;
|
|
259
|
+
$[7] = t2;
|
|
229
260
|
} else {
|
|
230
|
-
|
|
261
|
+
t2 = $[7];
|
|
231
262
|
}
|
|
232
|
-
const extraProps = useExtraProps(
|
|
233
|
-
let
|
|
234
|
-
if ($[
|
|
235
|
-
|
|
236
|
-
$[
|
|
237
|
-
$[
|
|
238
|
-
$[
|
|
239
|
-
$[
|
|
263
|
+
const extraProps = useExtraProps(t2);
|
|
264
|
+
let t3;
|
|
265
|
+
if ($[8] !== override || $[9] !== tokenToAmounts.amount || $[10] !== tokenToAmounts.token) {
|
|
266
|
+
t3 = override?.amountWei && tokenToAmounts.token ? formatUnits(BigInt(override.amountWei), tokenToAmounts.token.decimals) : tokenToAmounts.amount;
|
|
267
|
+
$[8] = override;
|
|
268
|
+
$[9] = tokenToAmounts.amount;
|
|
269
|
+
$[10] = tokenToAmounts.token;
|
|
270
|
+
$[11] = t3;
|
|
240
271
|
} else {
|
|
241
|
-
|
|
272
|
+
t3 = $[11];
|
|
242
273
|
}
|
|
243
|
-
const amount =
|
|
244
|
-
let
|
|
245
|
-
if ($[
|
|
246
|
-
|
|
274
|
+
const amount = t3;
|
|
275
|
+
let t4;
|
|
276
|
+
if ($[12] !== amount || $[13] !== extraProps || $[14] !== tokenToAmounts) {
|
|
277
|
+
t4 = {
|
|
247
278
|
...tokenToAmounts,
|
|
248
279
|
amount,
|
|
249
280
|
...extraProps
|
|
250
281
|
};
|
|
251
|
-
$[
|
|
252
|
-
$[
|
|
253
|
-
$[
|
|
254
|
-
$[
|
|
282
|
+
$[12] = amount;
|
|
283
|
+
$[13] = extraProps;
|
|
284
|
+
$[14] = tokenToAmounts;
|
|
285
|
+
$[15] = t4;
|
|
255
286
|
} else {
|
|
256
|
-
|
|
287
|
+
t4 = $[15];
|
|
257
288
|
}
|
|
258
|
-
return
|
|
289
|
+
return t4;
|
|
259
290
|
};
|
|
260
291
|
|
|
261
292
|
export { useTokenToInputProps };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/widget/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import { useDialogAtom } from \"@/components/widget/Dialog/state/dialogAtom\";\nimport type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useTokenToAtom } from \"../state/selectedTokenAtom\";\n\nimport { chainToAtom } from \"@/widget/state/chainToAtom\";\nimport { useAtom, useSetAtom } from \"jotai\";\n\nimport { useAvailableCrosses } from \"@/hooks/useAvailableCrosses\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { NumericFormatProps } from \"react-number-format\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/widget/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/widget/state/isCrosschainAtom\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = (): {\n amount: string;\n token?: Token;\n readOnly?: boolean;\n onAmountChange: NumericFormatProps[\"onValueChange\"];\n} => {\n const tokenTo = useTokenToAtom();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n return {\n amount: amountValue,\n token: tokenTo,\n readOnly: isCrossChain,\n // usdEstimation: 99.5, @TODO\n onAmountChange: (values) => {\n console.log(\"TokenTo::onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n priceMode,\n price,\n token,\n}: {\n isPriceLoading?: boolean;\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}) => {\n const { showSelectTokenDialog } = useDialogAtom();\n const chainId = useChainId();\n const [chainTo, setChainTo] = useAtom(chainToAtom);\n\n // chainFrom -> chainTo is not possible (no Across tokens available)\n const { availableCrosses = [] } = useAvailableCrosses({\n fromChainId: chainId,\n });\n\n const {\n enabledInConfig: deltaEnabledInConfig,\n enabledInSettings: deltaEnabledInSettings,\n enabledOnCurrentChain: deltaEnabledOnCurrentChain,\n } = useGlobalDeltaEnabled();\n\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n const youGetProps =\n // filling for SELL side\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee({ price, priceMode }),\n swapFeesUSD: price.destUSD\n ? calculateFeeUSD(price.partnerFee, price.destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n return {\n networkSwitcherProps:\n chainTo !== undefined\n ? {\n networks: [chainId].concat(availableCrosses),\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: setChainTo,\n disabled:\n availableCrosses.length === 0 ||\n !deltaEnabledInConfig ||\n !deltaEnabledInSettings ||\n !deltaEnabledOnCurrentChain,\n }\n : undefined,\n onTokenButtonClick: () => {\n showSelectTokenDialog({\n tokenType: \"to\",\n });\n },\n tokenType: \"to\" as const,\n onFocus: () => setCurrentSwapInput(\"to\"),\n label: (\n <>\n <span>Receive</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n youGetProps,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps();\n const extraProps = useExtraProps({\n isPriceLoading,\n priceMode,\n price,\n token: tokenToAmounts.token,\n });\n\n const amount =\n override?.amountWei && tokenToAmounts.token\n ? formatUnits(BigInt(override.amountWei), tokenToAmounts.token.decimals)\n : tokenToAmounts.amount;\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n };\n};\n"],"names":["useTokenToAmountProps","$","_c","tokenTo","useTokenToAtom","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","t0","values","console","log","value","t1","amount","token","readOnly","onAmountChange","useExtraProps","isPriceLoading","priceMode","price","showSelectTokenDialog","useDialogAtom","chainId","useChainId","chainTo","setChainTo","chainToAtom","fromChainId","availableCrosses","t2","useAvailableCrosses","t3","undefined","enabledInConfig","deltaEnabledInConfig","enabledInSettings","deltaEnabledInSettings","enabledOnCurrentChain","deltaEnabledOnCurrentChain","useGlobalDeltaEnabled","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","side","useSwapSide","isSell","isLoading","t4","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","destUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","t5","networks","concat","selectedNetwork","allOption","onSelect","disabled","length","t6","tokenType","t7","t8","Symbol","for","t9","t10","networkSwitcherProps","onTokenButtonClick","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/widget/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useTokenFromAtom, useTokenToAtom } from \"../state/selectedTokenAtom\";\n\nimport { chainToAtom } from \"@/widget/state/chainToAtom\";\nimport { useAtom, useSetAtom } from \"jotai\";\n\nimport { useAvailableCrosses } from \"@/hooks/useAvailableCrosses\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/widget/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/widget/state/isCrosschainAtom\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport { parseDeltaApiError } from \"@/lib/utils/delta\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\nimport type { TokenInputAmountProps, TokenInputExtraProps } from \"./types\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = ({\n price,\n}: {\n price?: DeltaOrMarketPrice;\n}): TokenInputAmountProps => {\n const tokenTo = useTokenToAtom();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n return {\n usdEstimation: price?.destUSD,\n amount: amountValue,\n token: tokenTo,\n readOnly: isCrossChain,\n onAmountChange: (values) => {\n console.log(\"TokenTo::onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n priceMode,\n priceError,\n price,\n token,\n}: {\n isPriceLoading?: boolean;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n price?: DeltaOrMarketPrice;\n token?: Token;\n}): TokenInputExtraProps => {\n const chainId = useChainId();\n const [chainTo, setChainTo] = useAtom(chainToAtom);\n const tokenFrom = useTokenFromAtom();\n\n // chainFrom -> chainTo is not possible (no Across tokens available)\n const { availableCrosses = [] } = useAvailableCrosses({\n fromChainId: chainId,\n });\n\n const {\n enabledInConfig: deltaEnabledInConfig,\n enabledInSettings: deltaEnabledInSettings,\n enabledOnCurrentChain: deltaEnabledOnCurrentChain,\n } = useGlobalDeltaEnabled();\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: chainTo,\n tokenAddress: tokenFrom.address,\n });\n\n const isCrosschain = useIsCrossChain();\n\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n const youGetProps =\n // filling for SELL side\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee({ price, priceMode }),\n swapFeesUSD: price.destUSD\n ? calculateFeeUSD(price.partnerFee, price.destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n const deltaWarning = parseDeltaApiError(priceError)?.description;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? \"Pay Token isn't supported on Delta\"\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\" ? deltaWarning || crosschainDeltaWarning : undefined;\n\n return {\n networkSwitcherProps:\n chainTo !== undefined\n ? {\n networks: [chainId].concat(availableCrosses),\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: setChainTo,\n disabled:\n availableCrosses.length === 0 ||\n !deltaEnabledInConfig ||\n !deltaEnabledInSettings ||\n !deltaEnabledOnCurrentChain,\n }\n : undefined,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentSwapInput(\"to\"),\n label: (\n <>\n <span>Receive</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n youGetProps,\n warningMessage,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps({ price });\n const extraProps = useExtraProps({\n isPriceLoading,\n priceMode,\n priceError,\n price,\n token: tokenToAmounts.token,\n });\n\n const amount =\n override?.amountWei && tokenToAmounts.token\n ? formatUnits(BigInt(override.amountWei), tokenToAmounts.token.decimals)\n : tokenToAmounts.amount;\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","price","tokenTo","useTokenToAtom","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","t1","destUSD","t2","values","console","log","value","t3","usdEstimation","amount","token","readOnly","onAmountChange","useExtraProps","isPriceLoading","priceMode","priceError","chainId","useChainId","chainTo","setChainTo","chainToAtom","tokenFrom","useTokenFromAtom","fromChainId","availableCrosses","useAvailableCrosses","undefined","enabledInConfig","deltaEnabledInConfig","enabledInSettings","deltaEnabledInSettings","enabledOnCurrentChain","deltaEnabledOnCurrentChain","useGlobalDeltaEnabled","t4","address","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","side","useSwapSide","isSell","t5","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","deltaWarning","parseDeltaApiError","description","crosschainDeltaWarning","warningMessage","t6","networks","concat","selectedNetwork","allOption","onSelect","disabled","length","t7","t8","Symbol","for","t9","t10","networkSwitcherProps","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals"],"mappings":"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"}
|