Code Enhancements
OmarHatem committed
Oct 3, 2023 at 20:07 UTC
a5150766966213af2cbb80bd806d292efd46ed34
6 files changed
+7
-11
cw_ethereum/lib/ethereum_client.dart
-1
@@ -6,7 +6,6 @@ import 'package:cw_ethereum/erc20_balance.dart';
6
import 'package:cw_core/erc20_token.dart';
7
import 'package:cw_ethereum/ethereum_transaction_model.dart';
8
import 'package:cw_ethereum/pending_ethereum_transaction.dart';
9
-import 'package:ens_dart/ens_dart.dart';
9
import 'package:flutter/services.dart';
10
import 'package:http/http.dart';
11
import 'package:web3dart/web3dart.dart';
lib/di.dart
+1
-1
@@ -883,7 +883,7 @@ Future<void> setup({
883
getIt.registerFactory(() => YatService());
884
885
getIt.registerFactory(() => AddressResolver(
886
- yatService: getIt.get<YatService>(), walletType: getIt.get<AppStore>().wallet!.type));
886
+ yatService: getIt.get<YatService>(), wallet: getIt.get<AppStore>().wallet!));
887
888
getIt.registerFactoryParam<FullscreenQRPage, QrViewData, void>(
889
(QrViewData viewData, _) => FullscreenQRPage(qrViewData: viewData));
lib/entities/ens_record.dart
+1
-1
@@ -10,7 +10,7 @@ class EnsRecord {
10
Web3Client? _client;
11
12
if (wallet != null && wallet.type == WalletType.ethereum) {
13
- _client = ethereum!.getWeb3Client(wallet) as Web3Client?;
13
+ _client = ethereum!.getWeb3Client(wallet);
14
}
15
16
if (_client == null) {
lib/entities/parse_address_from_domain.dart
+2
-5
@@ -1,13 +1,10 @@
1
import 'package:cake_wallet/core/address_validator.dart';
2
import 'package:cake_wallet/core/yat_service.dart';
3
-import 'package:cake_wallet/di.dart';
3
import 'package:cake_wallet/entities/ens_record.dart';
4
import 'package:cake_wallet/entities/openalias_record.dart';
5
import 'package:cake_wallet/entities/parsed_address.dart';
6
import 'package:cake_wallet/entities/unstoppable_domain_address.dart';
7
import 'package:cake_wallet/entities/emoji_string_extension.dart';
9
-import 'package:cake_wallet/ethereum/ethereum.dart';
10
-import 'package:cake_wallet/store/app_store.dart';
8
import 'package:cake_wallet/twitter/twitter_api.dart';
9
import 'package:cw_core/crypto_currency.dart';
10
import 'package:cw_core/wallet_base.dart';
@@ -15,10 +12,11 @@ import 'package:cw_core/wallet_type.dart';
12
import 'package:cake_wallet/entities/fio_address_provider.dart';
13
14
class AddressResolver {
18
- AddressResolver({required this.yatService, required this.walletType});
15
+ AddressResolver({required this.yatService, required this.wallet}) : walletType = wallet.type;
16
17
final YatService yatService;
18
final WalletType walletType;
19
+ final WalletBase wallet;
20
21
static const unstoppableDomains = [
22
'crypto',
@@ -102,7 +100,6 @@ class AddressResolver {
100
}
101
102
if (text.endsWith(".eth")) {
105
- WalletBase? wallet = getIt.get<AppStore>().wallet!;
103
final address = await EnsRecord.fetchEnsAddress(text, wallet: wallet);
104
if (address.isNotEmpty && address != "0x0000000000000000000000000000000000000000") {
105
return ParsedAddress.fetchEnsAddress(name: text, address: address);
lib/ethereum/cw_ethereum.dart
+1
-1
@@ -133,7 +133,7 @@ class CWEthereum extends Ethereum {
133
}
134
135
@override
136
- dynamic getWeb3Client(WalletBase wallet) {
136
+ Web3Client? getWeb3Client(WalletBase wallet) {
137
return (wallet as EthereumWallet).getWeb3Client();
138
}
139
}
tool/configure.dart
+2
-2
@@ -467,7 +467,6 @@ Future<void> generateEthereum(bool hasImplementation) async {
467
final outputFile = File(ethereumOutputPath);
468
const ethereumCommonHeaders = """
469
import 'package:cake_wallet/view_model/send/output.dart';
470
-import 'package:cw_core/crypto_amount_format.dart';
470
import 'package:cw_core/crypto_currency.dart';
471
import 'package:cw_core/erc20_token.dart';
472
import 'package:cw_core/output_info.dart';
@@ -478,6 +477,7 @@ import 'package:cw_core/wallet_credentials.dart';
477
import 'package:cw_core/wallet_info.dart';
478
import 'package:cw_core/wallet_service.dart';
479
import 'package:hive/hive.dart';
480
+import 'package:web3dart/web3dart.dart';
481
""";
482
const ethereumCWHeaders = """
483
import 'package:cw_ethereum/ethereum_formatter.dart';
@@ -525,7 +525,7 @@ abstract class Ethereum {
525
526
CryptoCurrency assetOfTransaction(WalletBase wallet, TransactionInfo transaction);
527
void updateEtherscanUsageState(WalletBase wallet, bool isEnabled);
528
- dynamic getWeb3Client(WalletBase wallet);
528
+ Web3Client? getWeb3Client(WalletBase wallet);
529
}
530
""";
531