* add prepaid range support for CakePay cards
* use selected denomination for order creation
* fix Flexible widget issue
* forces to use prod api
* auto-reformat
* fix the input string format [skip ci]
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* fix the value string format [skip ci]
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* fix the nextamount string format
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
---------
Co-authored-by: Robert Malikowski <malikowskirobert@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* test add lint as separate action
* nicer logging
* only detect changes in dart files
* fix printV warnings being displayed when editing printV
---------
Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
* fix fiat amount resetting on swap page
* fix pressing ALL in fiat input mode
* populate amountController when disabling fiat mode
* fix resetting to crypto amount after fiat amount is entered
* fix rate fetching when switching currency for send all
* feat: harden spam detection for solana and evm
* fix: guard scam/impersonator tokens from auto-enabling on EVM and Solana
* feat: enhance token property validation for scam detection
Chainflip added Tron support with asset ids trx.tron and usdt.tron.
Enable both for swaps in the Chainflip provider.
Tron needs explicit handling because Chainflip's network slug is
'tron', while Cake uses the 'TRX' tag (and null for native TRX), so
the generic title.tag normalization can't produce the right ids:
- _supported: add trx, usdttrc20
- _normalizeCurrency: map trx -> trx.tron, usdttrc20 -> usdt.tron
- _normalizeNetworkName: TRON -> Tron (status lookup in findTradeById)
- _toCurrency: reverse-map trx.tron/usdt.tron for trade resolution
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* if input transactions are not all fetched correctly or had a failure, still parse the transaction correctly instead of skipping it
* handle nullable tx fee
* show warning for BTC txs with missing inputs
---------
Co-authored-by: Serhii <17529954+serhii-bor@users.noreply.github.com>
getAvailableBuyProviderTypes() now returns [moonpay] only when moonPayApiKey is
non-empty, so MoonPay's Buy button appears only in builds where the CI secret is
present (and the exchange-helper signer is live). Both build workflows now inject
MOONPAY_API_KEY -> moonPayApiKey and EXCHANGE_HELPER_API_KEY -> exchangeHelperApiKey
alongside Trocador + WalletConnect. moonPaySecretKey is server-side and never injected.