import { USDT_RATE, GAS_PRICE } from '@shared/config/constants' import { useConverter } from '../model/useConverter' import { findTier, progressPercent } from '../model/tiers' import { usePaymentConfig } from '@features/payment' import { AgreementCheckbox } from './AgreementCheckbox' import { CommissionTable } from './CommissionTable' import styles from './Converter.module.css' import { Title } from '@shared/ui/Title/Title' export function Converter() { const { data: config } = usePaymentConfig() const configUsdtRate = Number(config?.usdt_exchange_rate) || USDT_RATE const gasPriceRub = Number(config?.gas_fee) * configUsdtRate || GAS_PRICE const c = useConverter({ usdtRate: configUsdtRate }) // c.rubVal / c.numRub used as USDT input; RUB is computed const numUsdt = c.numRub const approxRub = numUsdt * configUsdtRate const { pct } = findTier(approxRub) const effectiveRate = configUsdtRate * (1 + pct / 100) const rubOutput = numUsdt > 0 ? (numUsdt * effectiveRate).toFixed(2) : '' const commission = (approxRub * pct) / 100 return (
Конвертация
Данные обновляются в реальном времени
Цена газа в RUB {gasPriceRub.toFixed(2)} RUB
USDT/RUB {configUsdtRate.toFixed(2)} ₽
c.updateRub(e.target.value)} placeholder="0" inputMode="decimal" />
USDT
RUB
c.setAgreed(!c.agreed)} />
) }