14.05.2026 rip
This commit is contained in:
@@ -51,7 +51,7 @@ export const NETWORKS: readonly Network[] = [
|
|||||||
confirm: '~1 сек',
|
confirm: '~1 сек',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'BNB Chain',
|
name: 'BSC Chain',
|
||||||
ticker: 'BNB',
|
ticker: 'BNB',
|
||||||
cls: 'bnb',
|
cls: 'bnb',
|
||||||
icon: '◆',
|
icon: '◆',
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import styles from './ReceiveModal.module.css'
|
|||||||
|
|
||||||
const CHAIN_LABEL: Record<Chain, string> = {
|
const CHAIN_LABEL: Record<Chain, string> = {
|
||||||
ETH: 'Ethereum',
|
ETH: 'Ethereum',
|
||||||
BSC: 'BNB Smart Chain',
|
BSC: 'BSC Smart Chain',
|
||||||
BTC: 'Bitcoin',
|
BTC: 'Bitcoin',
|
||||||
TRX: 'Tron',
|
TRX: 'Tron',
|
||||||
SOL: 'Solana',
|
SOL: 'Solana',
|
||||||
|
|||||||
@@ -11,14 +11,14 @@ export type TrxToken = 'USDT' | 'USDC'
|
|||||||
// SOL has 14 SPL tokens in the registry
|
// SOL has 14 SPL tokens in the registry
|
||||||
export type SolToken =
|
export type SolToken =
|
||||||
| 'USDC' | 'USDT' | 'RAY' | 'BONK' | 'JTO' | 'PYTH'
|
| 'USDC' | 'USDT' | 'RAY' | 'BONK' | 'JTO' | 'PYTH'
|
||||||
| 'WIF' | 'JUP' | 'ORCA' | 'MNGO' | 'MSOL' | 'STSOL'
|
| 'WIF' | 'JUP' | 'ORCA' | 'MNGO' | 'MSOL' | 'STSOL'
|
||||||
| 'SAMO' | 'ATLAS'
|
| 'SAMO' | 'ATLAS'
|
||||||
|
|
||||||
export const CHAIN_TOKENS = {
|
export const CHAIN_TOKENS = {
|
||||||
ETH: ['USDT', 'USDC', 'DAI', 'WBTC', 'LINK', 'UNI'] as const satisfies readonly EthToken[],
|
ETH: ['USDT', 'USDC', 'DAI', 'WBTC', 'LINK', 'UNI'] as const satisfies readonly EthToken[],
|
||||||
BSC: ['USDT', 'USDC', 'BUSD', 'WBNB', 'DOGE'] as const satisfies readonly BscToken[],
|
BSC: ['USDT', 'USDC', 'BUSD', 'WBNB', 'DOGE'] as const satisfies readonly BscToken[],
|
||||||
BTC: [] as const,
|
BTC: [] as const,
|
||||||
TRX: ['USDT', 'USDC'] as const satisfies readonly TrxToken[],
|
TRX: ['USDT', 'USDC'] as const satisfies readonly TrxToken[],
|
||||||
SOL: ['USDC', 'USDT', 'RAY', 'BONK', 'JTO', 'PYTH', 'WIF', 'JUP', 'ORCA', 'MNGO', 'MSOL', 'STSOL', 'SAMO', 'ATLAS'] as const satisfies readonly SolToken[],
|
SOL: ['USDC', 'USDT', 'RAY', 'BONK', 'JTO', 'PYTH', 'WIF', 'JUP', 'ORCA', 'MNGO', 'MSOL', 'STSOL', 'SAMO', 'ATLAS'] as const satisfies readonly SolToken[],
|
||||||
} satisfies Record<Chain, readonly string[]>
|
} satisfies Record<Chain, readonly string[]>
|
||||||
|
|
||||||
@@ -53,8 +53,8 @@ export const CHAIN_CONFIG: Record<Chain, ChainConfig> = {
|
|||||||
nativeDecimals: 18,
|
nativeDecimals: 18,
|
||||||
},
|
},
|
||||||
BSC: {
|
BSC: {
|
||||||
label: 'BNB Chain',
|
label: 'BSC Chain',
|
||||||
nativeSymbol: 'BNB',
|
nativeSymbol: 'BSC',
|
||||||
hasToken: true,
|
hasToken: true,
|
||||||
hasFeeTier: false,
|
hasFeeTier: false,
|
||||||
addressPlaceholder: '0x…',
|
addressPlaceholder: '0x…',
|
||||||
@@ -102,7 +102,7 @@ export const TICKER_TO_CHAIN: Record<string, Chain> = {
|
|||||||
ETH: 'ETH',
|
ETH: 'ETH',
|
||||||
SOL: 'SOL',
|
SOL: 'SOL',
|
||||||
TRX: 'TRX',
|
TRX: 'TRX',
|
||||||
BNB: 'BSC',
|
BSC: 'BSC',
|
||||||
}
|
}
|
||||||
|
|
||||||
// ─── API request / response types ───────────────────────────────────────────
|
// ─── API request / response types ───────────────────────────────────────────
|
||||||
|
|||||||
@@ -18,54 +18,54 @@ export interface Token {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const TOKENS: Record<string, Token> = {
|
const TOKENS: Record<string, Token> = {
|
||||||
BTC: { symbol: 'BTC', letter: '₿', logo: btc, color: '#F7931A', network: 'BITCOIN', balance: 0, usdRate: 67412, decimals: 8 },
|
BTC: { symbol: 'BTC', letter: '₿', logo: btc, color: '#F7931A', network: 'BITCOIN', balance: 0, usdRate: 67412, decimals: 8 },
|
||||||
ETH: { symbol: 'ETH', letter: 'E', logo: eth, color: '#627EEA', network: 'ETHEREUM', balance: 0, usdRate: 3521, decimals: 18 },
|
ETH: { symbol: 'ETH', letter: 'E', logo: eth, color: '#627EEA', network: 'ETHEREUM', balance: 0, usdRate: 3521, decimals: 18 },
|
||||||
SOL: { symbol: 'SOL', letter: 'S', logo: sol, color: '#9945FF', network: 'SOLANA', balance: 0.994, usdRate: 163.84, decimals: 9 },
|
SOL: { symbol: 'SOL', letter: 'S', logo: sol, color: '#9945FF', network: 'SOLANA', balance: 0.994, usdRate: 163.84, decimals: 9 },
|
||||||
TRX: { symbol: 'TRX', letter: 'T', logo: trx, color: '#FF060A', network: 'TRON', balance: 0, usdRate: 0.12, decimals: 6 },
|
TRX: { symbol: 'TRX', letter: 'T', logo: trx, color: '#FF060A', network: 'TRON', balance: 0, usdRate: 0.12, decimals: 6 },
|
||||||
ARB: { symbol: 'ARB', letter: 'A', logo: arb, color: '#4A6DFF', network: 'ARBITRUM', balance: 0, usdRate: 0.92, decimals: 18 },
|
ARB: { symbol: 'ARB', letter: 'A', logo: arb, color: '#4A6DFF', network: 'ARBITRUM', balance: 0, usdRate: 0.92, decimals: 18 },
|
||||||
USDC: { symbol: 'USDC', letter: '$', color: '#2775CA', network: 'SOLANA', balance: 0, usdRate: 1, decimals: 6 },
|
USDC: { symbol: 'USDC', letter: '$', color: '#2775CA', network: 'SOLANA', balance: 0, usdRate: 1, decimals: 6 },
|
||||||
USDT: { symbol: 'USDT', letter: '$', color: '#26A17B', network: 'ETHEREUM', balance: 0, usdRate: 1, decimals: 6 },
|
USDT: { symbol: 'USDT', letter: '$', color: '#26A17B', network: 'ETHEREUM', balance: 0, usdRate: 1, decimals: 6 },
|
||||||
}
|
}
|
||||||
|
|
||||||
export const TOKENS_LIST: Token[] = Object.values(TOKENS)
|
export const TOKENS_LIST: Token[] = Object.values(TOKENS)
|
||||||
|
|
||||||
export const TOKEN_META: Record<string, { letter: string; color: string; logo?: string }> = {
|
export const TOKEN_META: Record<string, { letter: string; color: string; logo?: string }> = {
|
||||||
// Native / major
|
// Native / major
|
||||||
BTC: { letter: '₿', logo: btc, color: '#F7931A' },
|
BTC: { letter: '₿', logo: btc, color: '#F7931A' },
|
||||||
ETH: { letter: 'E', logo: eth, color: '#627EEA' },
|
ETH: { letter: 'E', logo: eth, color: '#627EEA' },
|
||||||
BNB: { letter: 'B', color: '#F3BA2F' },
|
BSC: { letter: 'B', color: '#F3BA2F' },
|
||||||
SOL: { letter: 'S', logo: sol, color: '#9945FF' },
|
SOL: { letter: 'S', logo: sol, color: '#9945FF' },
|
||||||
TRX: { letter: 'T', logo: trx, color: '#FF060A' },
|
TRX: { letter: 'T', logo: trx, color: '#FF060A' },
|
||||||
ARB: { letter: 'A', logo: arb, color: '#4A6DFF' },
|
ARB: { letter: 'A', logo: arb, color: '#4A6DFF' },
|
||||||
// Stablecoins
|
// Stablecoins
|
||||||
USDC: { letter: '$', color: '#2775CA' },
|
USDC: { letter: '$', color: '#2775CA' },
|
||||||
USDT: { letter: '$', color: '#26A17B' },
|
USDT: { letter: '$', color: '#26A17B' },
|
||||||
DAI: { letter: 'D', color: '#F5AC37' },
|
DAI: { letter: 'D', color: '#F5AC37' },
|
||||||
BUSD: { letter: 'B', color: '#F0B90B' },
|
BUSD: { letter: 'B', color: '#F0B90B' },
|
||||||
// ETH tokens
|
// ETH tokens
|
||||||
WBTC: { letter: 'W', color: '#F7931A' },
|
WBTC: { letter: 'W', color: '#F7931A' },
|
||||||
LINK: { letter: 'L', color: '#2A5ADA' },
|
LINK: { letter: 'L', color: '#2A5ADA' },
|
||||||
UNI: { letter: 'U', color: '#FF007A' },
|
UNI: { letter: 'U', color: '#FF007A' },
|
||||||
// BSC tokens
|
// BSC tokens
|
||||||
WBNB: { letter: 'W', color: '#F3BA2F' },
|
WBNB: { letter: 'W', color: '#F3BA2F' },
|
||||||
DOGE: { letter: 'D', color: '#C2A633' },
|
DOGE: { letter: 'D', color: '#C2A633' },
|
||||||
// SOL tokens
|
// SOL tokens
|
||||||
JUP: { letter: 'J', color: '#C7A52D' },
|
JUP: { letter: 'J', color: '#C7A52D' },
|
||||||
WIF: { letter: 'W', color: '#9333EA' },
|
WIF: { letter: 'W', color: '#9333EA' },
|
||||||
BONK: { letter: 'B', color: '#FF8C00' },
|
BONK: { letter: 'B', color: '#FF8C00' },
|
||||||
RAY: { letter: 'R', color: '#5AC4BE' },
|
RAY: { letter: 'R', color: '#5AC4BE' },
|
||||||
ORCA: { letter: 'O', color: '#1B8EF2' },
|
ORCA: { letter: 'O', color: '#1B8EF2' },
|
||||||
PYTH: { letter: 'P', color: '#8B5CF6' },
|
PYTH: { letter: 'P', color: '#8B5CF6' },
|
||||||
JTO: { letter: 'J', color: '#06B6D4' },
|
JTO: { letter: 'J', color: '#06B6D4' },
|
||||||
W: { letter: 'W', color: '#6B7280' },
|
W: { letter: 'W', color: '#6B7280' },
|
||||||
PUMP: { letter: 'P', color: '#00D4AA' },
|
PUMP: { letter: 'P', color: '#00D4AA' },
|
||||||
POPCAT: { letter: 'P', color: '#FF6B6B' },
|
POPCAT: { letter: 'P', color: '#FF6B6B' },
|
||||||
TRUMP: { letter: 'T', color: '#E63946' },
|
TRUMP: { letter: 'T', color: '#E63946' },
|
||||||
PENGU: { letter: 'P', color: '#60A5FA' },
|
PENGU: { letter: 'P', color: '#60A5FA' },
|
||||||
}
|
}
|
||||||
|
|
||||||
const CHAIN_NATIVE: Record<string, string> = {
|
const CHAIN_NATIVE: Record<string, string> = {
|
||||||
ETH: 'ETH', BSC: 'BNB', BTC: 'BTC', TRX: 'TRX', SOL: 'SOL',
|
ETH: 'ETH', BSC: 'BSC', BTC: 'BTC', TRX: 'TRX', SOL: 'SOL',
|
||||||
}
|
}
|
||||||
|
|
||||||
export function buildTokensFromBalance(data: WalletBalanceData): Token[] {
|
export function buildTokensFromBalance(data: WalletBalanceData): Token[] {
|
||||||
|
|||||||
@@ -21,5 +21,5 @@ export const TOKENS: readonly Token[] = [
|
|||||||
{ ticker: 'ETH', name: 'Ethereum', logo: eth, color: '#627EEA', price: '$2,053.97', change: -0.12, bal: '0.07636', usd: '$156.51', fav: false },
|
{ ticker: 'ETH', name: 'Ethereum', logo: eth, color: '#627EEA', price: '$2,053.97', change: -0.12, bal: '0.07636', usd: '$156.51', fav: false },
|
||||||
{ ticker: 'SOL', name: 'Solana', logo: sol, color: '#9945FF', price: '$163.84', change: -1.57, bal: '0.07636', usd: '$156.51', fav: false },
|
{ ticker: 'SOL', name: 'Solana', logo: sol, color: '#9945FF', price: '$163.84', change: -1.57, bal: '0.07636', usd: '$156.51', fav: false },
|
||||||
{ ticker: 'TRX', name: 'Tron', logo: trx, color: '#FF060A', price: '$0.1197', change: 1.33, bal: '0.07636', usd: '$156.51', fav: false },
|
{ ticker: 'TRX', name: 'Tron', logo: trx, color: '#FF060A', price: '$0.1197', change: 1.33, bal: '0.07636', usd: '$156.51', fav: false },
|
||||||
{ ticker: 'BNB', name: 'BNB Chain', logo: bnb, color: '#F3BA2F', price: '$0.00', change: 0, bal: '0.00000', usd: '$0.00', fav: false },
|
{ ticker: 'BSC', name: 'BSC Chain', logo: bnb, color: '#F3BA2F', price: '$0.00', change: 0, bal: '0.00000', usd: '$0.00', fav: false },
|
||||||
] as const
|
] as const
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { CHAINS } from '@features/wallet'
|
|||||||
import { TOKENS } from './tokens'
|
import { TOKENS } from './tokens'
|
||||||
import type { WalletBalanceData } from '@features/wallet'
|
import type { WalletBalanceData } from '@features/wallet'
|
||||||
|
|
||||||
const PRICE_SYMBOLS = ['BTC', 'ETH', 'SOL', 'TRX', 'BNB']
|
const PRICE_SYMBOLS = ['BTC', 'ETH', 'SOL', 'TRX', 'BSC']
|
||||||
|
|
||||||
type ChainSource =
|
type ChainSource =
|
||||||
| { chain: 'BTC' | 'ETH' | 'SOL' | 'TRX' | 'BSC'; type: 'native' }
|
| { chain: 'BTC' | 'ETH' | 'SOL' | 'TRX' | 'BSC'; type: 'native' }
|
||||||
@@ -14,7 +14,7 @@ const CHAIN_MAP: Record<string, ChainSource> = {
|
|||||||
ETH: { chain: 'ETH', type: 'native' },
|
ETH: { chain: 'ETH', type: 'native' },
|
||||||
SOL: { chain: 'SOL', type: 'native' },
|
SOL: { chain: 'SOL', type: 'native' },
|
||||||
TRX: { chain: 'TRX', type: 'native' },
|
TRX: { chain: 'TRX', type: 'native' },
|
||||||
BNB: { chain: 'BSC', type: 'native' },
|
BSC: { chain: 'BSC', type: 'native' },
|
||||||
}
|
}
|
||||||
|
|
||||||
function formatUsd(value: number): string {
|
function formatUsd(value: number): string {
|
||||||
|
|||||||
Reference in New Issue
Block a user