add redirects
This commit is contained in:
@@ -2,12 +2,11 @@ import { useEffect, useState } from 'react'
|
|||||||
import { useNavigate } from 'react-router-dom'
|
import { useNavigate } from 'react-router-dom'
|
||||||
import { useQueryClient } from '@tanstack/react-query'
|
import { useQueryClient } from '@tanstack/react-query'
|
||||||
import {
|
import {
|
||||||
useJumperTokens, useWalletBalance, useWalletAddresses, useJumperQuote, useFetchJumperQuote, useExecuteBridge,
|
useJumperTokens, useWalletBalance, useWalletAddresses, useFetchJumperQuote, useExecuteBridge,
|
||||||
type Chain, type JumperToken, type WalletBalanceData, type JumperQuote, type JumperQuotePayload,
|
type Chain, type JumperToken, type WalletBalanceData, type JumperQuote, type JumperQuotePayload,
|
||||||
} from '@features/wallet'
|
} from '@features/wallet'
|
||||||
import { Notification, PrimaryButton } from '@shared/ui'
|
import { Notification, PrimaryButton } from '@shared/ui'
|
||||||
import { ROUTES } from '@shared/config/routes'
|
import { ROUTES } from '@shared/config/routes'
|
||||||
import { useDebounce } from '@shared/lib/hooks/useDebounce'
|
|
||||||
import { toBaseUnits, fromBaseUnits } from '@shared/lib/utils/baseUnits'
|
import { toBaseUnits, fromBaseUnits } from '@shared/lib/utils/baseUnits'
|
||||||
import { truncateDecimals } from '@shared/lib/utils/truncateDecimals'
|
import { truncateDecimals } from '@shared/lib/utils/truncateDecimals'
|
||||||
import {
|
import {
|
||||||
@@ -95,8 +94,7 @@ export function BridgeForm() {
|
|||||||
setToToken(t => toTokenOptions.find(o => o.symbol === t.symbol) ?? toTokenOptions[0])
|
setToToken(t => toTokenOptions.find(o => o.symbol === t.symbol) ?? toTokenOptions[0])
|
||||||
}, [jumperData, toWalletData, toNetwork])
|
}, [jumperData, toWalletData, toNetwork])
|
||||||
|
|
||||||
const debouncedAmount = useDebounce(fromAmount, 500)
|
const parsedAmount = parseFloat(fromAmount)
|
||||||
const parsedAmount = parseFloat(debouncedAmount)
|
|
||||||
|
|
||||||
const fromJumper = jumperData?.[CHAIN_ID_BY_NET[fromNetwork]]?.find(t => t.symbol === fromToken.symbol)
|
const fromJumper = jumperData?.[CHAIN_ID_BY_NET[fromNetwork]]?.find(t => t.symbol === fromToken.symbol)
|
||||||
const toJumper = jumperData?.[CHAIN_ID_BY_NET[toNetwork]]?.find(t => t.symbol === toToken.symbol)
|
const toJumper = jumperData?.[CHAIN_ID_BY_NET[toNetwork]]?.find(t => t.symbol === toToken.symbol)
|
||||||
@@ -110,17 +108,15 @@ export function BridgeForm() {
|
|||||||
toChain: CHAIN_ID_BY_NET[toNetwork],
|
toChain: CHAIN_ID_BY_NET[toNetwork],
|
||||||
fromToken: fromJumper.address,
|
fromToken: fromJumper.address,
|
||||||
toToken: toJumper.address,
|
toToken: toJumper.address,
|
||||||
fromAmount: toBaseUnits(debouncedAmount, fromToken.decimals),
|
fromAmount: toBaseUnits(fromAmount, fromToken.decimals),
|
||||||
fromAddress,
|
fromAddress,
|
||||||
toAddress,
|
toAddress,
|
||||||
slippage: 0.005,
|
slippage: 0.005,
|
||||||
}
|
}
|
||||||
: null
|
: null
|
||||||
|
|
||||||
const { data: quoteData, isFetching: isQuoting } = useJumperQuote(quotePayload)
|
const displayToAmount = quote
|
||||||
|
? truncateDecimals(fromBaseUnits(quote.estimate.toAmount, quote.action.toToken.decimals), 8)
|
||||||
const displayToAmount = quoteData
|
|
||||||
? truncateDecimals(fromBaseUnits(quoteData.estimate.toAmount, quoteData.action.toToken.decimals), 8)
|
|
||||||
: '0'
|
: '0'
|
||||||
|
|
||||||
function handleConfirm() {
|
function handleConfirm() {
|
||||||
@@ -199,7 +195,7 @@ export function BridgeForm() {
|
|||||||
hideNetworkSelect
|
hideNetworkSelect
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<PrimaryButton label="Подтвердить бридж" onClick={handleConfirm} disabled={!quotePayload || isPending || isQuoting} />
|
<PrimaryButton label="Подтвердить бридж" onClick={handleConfirm} disabled={!quotePayload || isPending} />
|
||||||
|
|
||||||
{quote && (
|
{quote && (
|
||||||
<BridgeConfirmModal
|
<BridgeConfirmModal
|
||||||
|
|||||||
Reference in New Issue
Block a user