Skip to content

Commit a3774ae

Browse files
Fix Twitter profile address parsing for profiles with a domain (#2696)
* feat: parsing addresses+unstoppable domains from twitter profiles * fix: address resolution * fix: parse addresses from bio containing domain and address --------- Co-authored-by: Omar Hatem <[email protected]>
1 parent 1d715d3 commit a3774ae

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

lib/entities/parse_address_from_domain.dart

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import 'package:cake_wallet/core/address_validator.dart';
22
import 'package:cake_wallet/core/yat_service.dart';
3+
import 'package:cake_wallet/entities/emoji_string_extension.dart';
34
import 'package:cake_wallet/entities/ens_record.dart';
5+
import 'package:cake_wallet/entities/fio_address_provider.dart';
46
import 'package:cake_wallet/entities/openalias_record.dart';
57
import 'package:cake_wallet/entities/parsed_address.dart';
68
import 'package:cake_wallet/entities/unstoppable_domain_address.dart';
7-
import 'package:cake_wallet/entities/emoji_string_extension.dart';
89
import 'package:cake_wallet/entities/wellknown_record.dart';
910
import 'package:cake_wallet/entities/zano_alias.dart';
1011
import 'package:cake_wallet/exchange/provider/thorchain_exchange.provider.dart';
@@ -16,7 +17,6 @@ import 'package:cw_core/crypto_currency.dart';
1617
import 'package:cw_core/utils/print_verbose.dart';
1718
import 'package:cw_core/wallet_base.dart';
1819
import 'package:cw_core/wallet_type.dart';
19-
import 'package:cake_wallet/entities/fio_address_provider.dart';
2020
import 'package:flutter/cupertino.dart';
2121

2222
import 'bip_353_record.dart';
@@ -243,7 +243,8 @@ class AddressResolver {
243243
final domain = extractUnstoppableDomain(twitterUser.description);
244244
if (domain.isNotEmpty) {
245245
final parsedAddressFromDomain = await resolve(context, domain, currency);
246-
if (parsedAddressFromDomain.addresses.isNotEmpty) {
246+
if (parsedAddressFromDomain.addresses.isNotEmpty &&
247+
parsedAddressFromDomain.addresses.first != domain) {
247248
return ParsedAddress(
248249
addresses: parsedAddressFromDomain.addresses,
249250
name: text,
@@ -271,7 +272,8 @@ class AddressResolver {
271272
final domain = extractUnstoppableDomain(twitterUser.location);
272273
if (domain.isNotEmpty) {
273274
final parsedAddressFromDomain = await resolve(context, domain, currency);
274-
if (parsedAddressFromDomain.addresses.isNotEmpty) {
275+
if (parsedAddressFromDomain.addresses.isNotEmpty &&
276+
parsedAddressFromDomain.addresses.first != domain) {
275277
return ParsedAddress(
276278
addresses: parsedAddressFromDomain.addresses,
277279
name: text,
@@ -301,7 +303,8 @@ class AddressResolver {
301303
final domain = extractUnstoppableDomain(pinnedTweet);
302304
if (domain.isNotEmpty) {
303305
final parsedAddressFromDomain = await resolve(context, domain, currency);
304-
if (parsedAddressFromDomain.addresses.isNotEmpty) {
306+
if (parsedAddressFromDomain.addresses.isNotEmpty &&
307+
parsedAddressFromDomain.addresses.first != domain) {
305308
return ParsedAddress(
306309
addresses: parsedAddressFromDomain.addresses,
307310
name: text,

0 commit comments

Comments
 (0)