Add doge coin to pay anything feature (#2481)

Fix cakepay token issue
This commit is contained in:
Omar Hatem
2025-08-24 23:06:01 +03:00
committed by GitHub
parent c385c6bec5
commit e6385b8084
5 changed files with 21 additions and 11 deletions
@@ -3,14 +3,14 @@ import 'package:cake_wallet/cake_pay/src/services/cake_pay_api.dart';
import 'package:cake_wallet/cake_pay/src/models/cake_pay_order.dart';
import 'package:cake_wallet/cake_pay/src/models/cake_pay_vendor.dart';
import 'package:cake_wallet/core/secure_storage.dart';
import 'package:cake_wallet/entities/country.dart';
class CakePayService {
CakePayService(this.secureStorage, this.cakePayApi);
static const cakePayEmailStorageKey = 'cake_pay_email';
static const cakePayUsernameStorageKey = 'cake_pay_username';
static const cakePayUserTokenKey = 'cake_pay_user_token';
/// `_v2` was added to log out users so they can login using the new backend
static const cakePayEmailStorageKey = 'cake_pay_email_v2';
static const cakePayUsernameStorageKey = 'cake_pay_username_v2';
static const cakePayUserTokenKey = 'cake_pay_user_token_v2';
static String get testCakePayApiKey => secrets.testCakePayApiKey;
+2
View File
@@ -157,6 +157,8 @@ class AddressValidator extends TextValidator {
pattern = '(lnbc|LNBC)([0-9]{1,}[a-zA-Z0-9]+)';
case CryptoCurrency.zano:
pattern = r'([1-9A-HJ-NP-Za-km-z]{90,200})|(@[\w\d.-]+)';
case CryptoCurrency.doge:
pattern = r'^D[a-km-zA-HJ-NP-Z1-9]{25,34}';
default:
return '';
}
+11 -3
View File
@@ -194,11 +194,19 @@ class UniversalAddressDetector {
currency: CryptoCurrency.ltc,
),
// Solana (Base58 format, 32-44 chars)
// Dogecoin P2PKH
_DetectionPattern(
pattern: RegExp(r'^[1-9A-HJ-NP-Za-km-z]{32,44}$'),
currency: CryptoCurrency.sol,
pattern: RegExp(r'^D[a-km-zA-HJ-NP-Z1-9]{25,34}$'),
currency: CryptoCurrency.doge,
),
// TODO: commented out until a better approach is implemented.
// as this will consider most addresses to be a valid Solana address
// Solana (Base58 format, 32-44 chars)
// _DetectionPattern(
// pattern: RegExp(r'^[1-9A-HJ-NP-Za-km-z]{32,44}$'),
// currency: CryptoCurrency.sol,
// ),
];
// Test each pattern in order of specificity