mirror of
https://github.com/cypherstack/stack_wallet.git
synced 2025-02-02 11:16:36 +00:00
paynym confirm transaction view flags and routing branch
This commit is contained in:
parent
cba33a1d69
commit
bffe5e09ca
1 changed files with 29 additions and 8 deletions
|
@ -12,6 +12,8 @@ import 'package:stackwallet/pages_desktop_specific/my_stack_view/wallet_view/sub
|
|||
import 'package:stackwallet/providers/providers.dart';
|
||||
import 'package:stackwallet/providers/wallet/public_private_balance_state_provider.dart';
|
||||
import 'package:stackwallet/route_generator.dart';
|
||||
import 'package:stackwallet/services/coins/coin_paynym_extension.dart';
|
||||
import 'package:stackwallet/services/coins/dogecoin/dogecoin_wallet.dart';
|
||||
import 'package:stackwallet/services/coins/epiccash/epiccash_wallet.dart';
|
||||
import 'package:stackwallet/services/coins/firo/firo_wallet.dart';
|
||||
import 'package:stackwallet/utilities/assets.dart';
|
||||
|
@ -41,6 +43,9 @@ class ConfirmTransactionView extends ConsumerStatefulWidget {
|
|||
required this.walletId,
|
||||
this.routeOnSuccessName = WalletView.routeName,
|
||||
this.isTradeTransaction = false,
|
||||
this.isPaynymTransaction = false,
|
||||
this.isPaynymNotificationTransaction = false,
|
||||
this.onSuccessInsteadOfRouteOnSuccess,
|
||||
}) : super(key: key);
|
||||
|
||||
static const String routeName = "/confirmTransactionView";
|
||||
|
@ -49,6 +54,9 @@ class ConfirmTransactionView extends ConsumerStatefulWidget {
|
|||
final String walletId;
|
||||
final String routeOnSuccessName;
|
||||
final bool isTradeTransaction;
|
||||
final bool isPaynymTransaction;
|
||||
final bool isPaynymNotificationTransaction;
|
||||
final VoidCallback? onSuccessInsteadOfRouteOnSuccess;
|
||||
|
||||
@override
|
||||
ConsumerState<ConfirmTransactionView> createState() =>
|
||||
|
@ -83,14 +91,22 @@ class _ConfirmTransactionViewState
|
|||
|
||||
try {
|
||||
String txid;
|
||||
final coin = manager.coin;
|
||||
if ((coin == Coin.firo || coin == Coin.firoTestNet) &&
|
||||
ref.read(publicPrivateBalanceStateProvider.state).state !=
|
||||
"Private") {
|
||||
txid = await (manager.wallet as FiroWallet)
|
||||
.confirmSendPublic(txData: transactionInfo);
|
||||
if (widget.isPaynymNotificationTransaction) {
|
||||
txid = await (manager.wallet as DogecoinWallet)
|
||||
.confirmNotificationTx(preparedTx: transactionInfo);
|
||||
} else if (widget.isPaynymTransaction) {
|
||||
//
|
||||
throw UnimplementedError("paynym send not implemented yet");
|
||||
} else {
|
||||
txid = await manager.confirmSend(txData: transactionInfo);
|
||||
final coin = manager.coin;
|
||||
if ((coin == Coin.firo || coin == Coin.firoTestNet) &&
|
||||
ref.read(publicPrivateBalanceStateProvider.state).state !=
|
||||
"Private") {
|
||||
txid = await (manager.wallet as FiroWallet)
|
||||
.confirmSendPublic(txData: transactionInfo);
|
||||
} else {
|
||||
txid = await manager.confirmSend(txData: transactionInfo);
|
||||
}
|
||||
}
|
||||
|
||||
// save note
|
||||
|
@ -102,7 +118,12 @@ class _ConfirmTransactionViewState
|
|||
|
||||
// pop back to wallet
|
||||
if (mounted) {
|
||||
Navigator.of(context).popUntil(ModalRoute.withName(routeOnSuccessName));
|
||||
if (widget.onSuccessInsteadOfRouteOnSuccess == null) {
|
||||
Navigator.of(context)
|
||||
.popUntil(ModalRoute.withName(routeOnSuccessName));
|
||||
} else {
|
||||
widget.onSuccessInsteadOfRouteOnSuccess!.call();
|
||||
}
|
||||
}
|
||||
} on BadEpicHttpAddressException catch (_) {
|
||||
if (mounted) {
|
||||
|
|
Loading…
Reference in a new issue