feat: add wbtc.eth, usdt.sol, usdt.arb on chainflip, fix usdc.arb and eth.arb (#3050)
David Cumps committed
Mar 13, 2026 at 02:06 UTC
db0442003a3719e6654baa29b41373be49308102
2 files changed
+12
-3
cw_core/lib/crypto_currency.dart
+4
-2
@@ -124,6 +124,8 @@ class CryptoCurrency extends EnumerableItem<int> with Serializable<int> implemen
124
CryptoCurrency.baseEth,
125
CryptoCurrency.usde,
126
CryptoCurrency.arbEth,
127
+ CryptoCurrency.usdcArb,
128
+ CryptoCurrency.usdtArb,
129
];
130
131
static const havenCurrencies = [
@@ -259,8 +261,8 @@ class CryptoCurrency extends EnumerableItem<int> with Serializable<int> implemen
261
static const arbEth = CryptoCurrency(title: 'ETH', tag: 'ARB', fullName: 'Ethereum', raw: 106, name: 'arbeth', iconPath: 'assets/images/crypto/ethereum.webp', decimals: 18, flatIconPath: "assets/new-ui/balance_card_icons/arbitrum.svg");
262
static const zec = CryptoCurrency(title: 'ZEC', fullName: 'Zcash', raw: 107, name: 'zec', iconPath: 'assets/images/zec_icon.png', decimals: 8,flatIconPath: "assets/new-ui/balance_card_icons/zcash.svg");
263
static const usdcArb = CryptoCurrency(title: 'USDC', tag: 'ARB', fullName: 'USDC Coin', raw: 108, name: 'usdcarb', iconPath: 'assets/images/crypto/usdc.webp', decimals: 6);
262
- static const ltcmweb = CryptoCurrency(title: 'LTC', fullName: 'Litecoin MWeb', raw: 107, name: 'ltcmweb', iconPath: 'assets/images/crypto/litecoin.webp', decimals: 8);
263
-
264
+ static const usdtArb = CryptoCurrency(title: 'USDT', tag: 'ARB', fullName: 'USDT Tether', raw: 109, name: 'usdtarb', iconPath: 'assets/images/crypto/tether.webp', decimals: 6);
265
+ static const ltcmweb = CryptoCurrency(title: 'LTC', fullName: 'Litecoin MWeb', raw: 110, name: 'ltcmweb', iconPath: 'assets/images/crypto/litecoin.webp', decimals: 8);
266
267
static final Map<int, CryptoCurrency> _rawCurrencyMap =
268
[...all, ...havenCurrencies, ...zcashCurrencies].fold<Map<int, CryptoCurrency>>(<int, CryptoCurrency>{}, (acc, item) {
lib/exchange/provider/chainflip_exchange_provider.dart
+8
-1
@@ -24,11 +24,13 @@ class ChainflipExchangeProvider extends ExchangeProvider {
24
CryptoCurrency.usdc,
25
CryptoCurrency.usdterc20,
26
CryptoCurrency.flip,
27
+ CryptoCurrency.wbtc,
28
CryptoCurrency.sol,
29
CryptoCurrency.usdcsol,
30
+ CryptoCurrency.usdtSol,
31
CryptoCurrency.arbEth,
32
CryptoCurrency.usdcArb,
31
- // TODO: Add CryptoCurrency.dot
33
+ CryptoCurrency.usdtArb,
34
];
35
36
static const _baseURL = 'chainflip-broker.io';
@@ -338,6 +340,7 @@ class ChainflipExchangeProvider extends ExchangeProvider {
340
final networkName = switch (name) {
341
'BITCOIN' => 'Bitcoin',
342
'ETHEREUM' => 'Ethereum',
343
+ 'ARBITRUM' => 'Arbitrum',
344
'SOLANA' => 'Solana',
345
_ => name
346
};
@@ -353,8 +356,12 @@ class ChainflipExchangeProvider extends ExchangeProvider {
356
'usdc.eth' => CryptoCurrency.usdc,
357
'usdt.eth' => CryptoCurrency.usdterc20,
358
'flip.eth' => CryptoCurrency.flip,
359
+ 'wbtc.eth' => CryptoCurrency.wbtc,
360
'sol.sol' => CryptoCurrency.sol,
361
'usdc.sol' => CryptoCurrency.usdcsol,
362
+ 'eth.arb' => CryptoCurrency.arbEth,
363
+ 'usdc.arb' => CryptoCurrency.usdcArb,
364
+ 'usdt.arb' => CryptoCurrency.usdtArb,
365
_ => null
366
};
367