Skip to content

Commit 24c5840

Browse files
committed
add synchronous address validate call
1 parent 53fa71b commit 24c5840

File tree

3 files changed

+13
-8
lines changed

3 files changed

+13
-8
lines changed

lib/wallets/crypto_currency/coins/epiccash.dart

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -65,12 +65,7 @@ class Epiccash extends Bip39Currency {
6565
}
6666
}
6767

68-
if (address.contains("@")) {
69-
return true; // Epicbox address format
70-
}
71-
72-
// Very very basic (bad) check
73-
return address.isNotEmpty && address.length > 10;
68+
return libEpic.validateSendAddressSync(address: address);
7469
}
7570

7671
@override
@@ -143,7 +138,8 @@ class Epiccash extends Bip39Currency {
143138
// Check for common slate fields.
144139
return parsed is Map &&
145140
(parsed.containsKey('id') || parsed.containsKey('slate_id')) &&
146-
(parsed.containsKey('amount') || parsed.containsKey('participant_data'));
141+
(parsed.containsKey('amount') ||
142+
parsed.containsKey('participant_data'));
147143
} catch (e) {
148144
return false;
149145
}
@@ -163,7 +159,8 @@ class Epiccash extends Bip39Currency {
163159
EpicTransactionMethod getTransactionMethod(String addressOrData) {
164160
if (isSlateJson(addressOrData)) {
165161
return EpicTransactionMethod.slatepack;
166-
} else if (isEpicboxAddress(addressOrData) || isHttpAddress(addressOrData)) {
162+
} else if (isEpicboxAddress(addressOrData) ||
163+
isHttpAddress(addressOrData)) {
167164
return EpicTransactionMethod.epicbox;
168165
} else {
169166
throw Exception("Unknown EpicTransactionMethod found!");

lib/wl_gen/interfaces/libepiccash_interface.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ abstract class LibEpicCashInterface {
8181

8282
Future<bool> validateSendAddress({required String address});
8383

84+
bool validateSendAddressSync({required String address});
85+
8486
Future<({int fee, bool strategyUseAll, int total})> getTransactionFees({
8587
required DynamicObject wallet,
8688
required int amount,

tool/wl_templates/EPIC_libepiccash_interface_impl.template.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
//ON
2+
import 'package:flutter_libepiccash/epic_cash.dart' as epc;
23
import 'package:flutter_libepiccash/git_versions.dart' as epic_versions;
34
import 'package:flutter_libepiccash/lib.dart';
45
import 'package:flutter_libepiccash/models/transaction.dart';
@@ -300,6 +301,11 @@ final class _LibEpicCashInterfaceImpl extends LibEpicCashInterface {
300301
return EpicWallet.validateSendAddress(address: address);
301302
}
302303

304+
@override
305+
bool validateSendAddressSync({required String address}) {
306+
return epc.validateSendAddress(address) == "1"; //lol
307+
}
308+
303309
@override
304310
Future<void> close({required DynamicObject wallet}) {
305311
return wallet.get<EpicWallet>().close();

0 commit comments

Comments
 (0)