14.05.2026 rip

This commit is contained in:
2026-05-14 20:05:35 +03:00
parent 2de30fbde6
commit fcfdac87b4
6 changed files with 150 additions and 5 deletions

View File

@@ -1,5 +1,7 @@
import { useState, useEffect } from 'react'
import { PrimaryButton } from '@shared/ui'
import { TOKENS_LIST, useSwapForm } from '../model/useSwapForm'
import { useWalletBalance, type Chain } from '@features/wallet'
import { TOKENS_LIST, buildTokensFromBalance, useSwapForm } from '../model/useSwapForm'
import { RateRow } from './RateRow'
import { SwapCard } from './SwapCard'
import { SwapDirectionButton } from './SwapDirectionButton'
@@ -17,17 +19,31 @@ export function SwapForm() {
setFromToken, setToToken,
} = useSwapForm()
const [fromNetwork, setFromNetwork] = useState('ETH')
const { data: walletData } = useWalletBalance(fromNetwork as Chain)
const tokenOptions = walletData ? buildTokensFromBalance(walletData) : TOKENS_LIST
useEffect(() => {
if (tokenOptions.length > 0) {
setFromToken(tokenOptions[0])
setToToken(tokenOptions[1] ?? tokenOptions[0])
}
}, [fromNetwork])
return (
<div className={styles.form}>
<SwapCard
mode="from"
token={fromToken}
tokenOptions={TOKENS_LIST}
tokenOptions={tokenOptions}
amount={fromAmount}
usd={fromUsd}
onAmountChange={setFromAmount}
onSetPercent={setPercent}
onTokenChange={setFromToken}
selectedNetwork={fromNetwork}
onNetworkChange={setFromNetwork}
/>
<SwapDirectionButton onClick={swapTokens} />
@@ -35,7 +51,7 @@ export function SwapForm() {
<SwapCard
mode="to"
token={toToken}
tokenOptions={TOKENS_LIST}
tokenOptions={tokenOptions}
amount={toAmount}
usd={toUsd}
slippage="0.16%"