fix: Bug when building Monero.Com resulting from solana exceptions situated in send viewmodel from cw_solana package (#1893)
David Adegoke committed
Dec 19, 2024 at 18:41 UTC
a6f61c595f98858a58b47cf61f798c309c0ecc7a
3 files changed
+22
-13
cw_core/lib/exceptions.dart
+9
-1
@@ -27,7 +27,7 @@ class TransactionCommitFailed implements Exception {
27
28
@override
29
String toString() {
30
- return errorMessage??"unknown error";
30
+ return errorMessage ?? "unknown error";
31
}
32
}
33
@@ -44,3 +44,11 @@ class TransactionCommitFailedBIP68Final implements Exception {}
44
class TransactionCommitFailedLessThanMin implements Exception {}
45
46
class TransactionInputNotSupported implements Exception {}
47
+
48
+class SignNativeTokenTransactionRentException implements Exception {}
49
+
50
+class CreateAssociatedTokenAccountException implements Exception {}
51
+
52
+class SignSPLTokenTransactionRentException implements Exception {}
53
+
54
+class NoAssociatedTokenAccountException implements Exception {}
cw_solana/lib/solana_exceptions.dart
+9
-7
@@ -1,4 +1,5 @@
1
import 'package:cw_core/crypto_currency.dart';
2
+import 'package:cw_core/exceptions.dart';
3
4
class SolanaTransactionCreationException implements Exception {
5
final String exceptionMessage;
@@ -20,18 +21,19 @@ class SolanaTransactionWrongBalanceException implements Exception {
21
String toString() => exceptionMessage;
22
}
23
23
-class SolanaSignNativeTokenTransactionRentException implements Exception {}
24
-
25
-class SolanaCreateAssociatedTokenAccountException implements Exception {
26
- final String exceptionMessage;
24
+class SolanaSignNativeTokenTransactionRentException
25
+ extends SignNativeTokenTransactionRentException {}
26
27
+class SolanaCreateAssociatedTokenAccountException extends CreateAssociatedTokenAccountException {
28
SolanaCreateAssociatedTokenAccountException(this.exceptionMessage);
29
+
30
+ final String exceptionMessage;
31
}
32
31
-class SolanaSignSPLTokenTransactionRentException implements Exception {}
33
+class SolanaSignSPLTokenTransactionRentException extends SignSPLTokenTransactionRentException {}
34
33
-class SolanaNoAssociatedTokenAccountException implements Exception {
34
- const SolanaNoAssociatedTokenAccountException(this.account, this.mint);
35
+class SolanaNoAssociatedTokenAccountException extends NoAssociatedTokenAccountException {
36
+ SolanaNoAssociatedTokenAccountException(this.account, this.mint);
37
38
final String account;
39
final String mint;
lib/view_model/send/send_view_model.dart
+4
-5
@@ -26,7 +26,6 @@ import 'package:cw_core/transaction_priority.dart';
26
import 'package:cw_core/unspent_coin_type.dart';
27
import 'package:cake_wallet/view_model/send/output.dart';
28
import 'package:cake_wallet/view_model/send/send_template_view_model.dart';
29
-import 'package:cw_solana/solana_exceptions.dart';
29
import 'package:flutter/material.dart';
30
import 'package:hive/hive.dart';
31
import 'package:mobx/mobx.dart';
@@ -676,19 +675,19 @@ abstract class SendViewModelBase extends WalletChangeListenerViewModel with Stor
675
}
676
}
677
679
- if (error is SolanaSignNativeTokenTransactionRentException) {
678
+ if (error is SignNativeTokenTransactionRentException) {
679
return S.current.solana_sign_native_transaction_rent_exception;
680
}
681
683
- if (error is SolanaCreateAssociatedTokenAccountException) {
682
+ if (error is CreateAssociatedTokenAccountException) {
683
return S.current.solana_create_associated_token_account_exception;
684
}
685
687
- if (error is SolanaSignSPLTokenTransactionRentException) {
686
+ if (error is SignSPLTokenTransactionRentException) {
687
return S.current.solana_sign_spl_token_transaction_rent_exception;
688
}
689
691
- if (error is SolanaNoAssociatedTokenAccountException) {
690
+ if (error is NoAssociatedTokenAccountException) {
691
return S.current.solana_no_associated_token_account_exception;
692
}
693