cake_wallet/cw_zano/lib/model/pending_zano_transaction.dart

53 lines
1.3 KiB
Dart
Raw Normal View History

2024-03-16 10:55:03 +00:00
import 'package:cw_core/pending_transaction.dart';
import 'package:cw_zano/api/model/destination.dart';
import 'package:cw_zano/api/model/transfer_result.dart';
2024-03-16 10:55:03 +00:00
import 'package:cw_zano/zano_formatter.dart';
import 'package:cw_zano/zano_wallet.dart';
2023-10-02 14:17:35 +00:00
class PendingZanoTransaction with PendingTransaction {
PendingZanoTransaction({
required this.zanoWallet,
required this.destinations,
required this.fee,
required this.comment,
2024-03-16 10:55:03 +00:00
required this.assetId,
required this.ticker,
this.decimalPoint = ZanoFormatter.defaultDecimalPoint,
2024-03-16 10:55:03 +00:00
required this.amount,
});
2023-10-02 14:17:35 +00:00
2023-12-16 12:19:11 +00:00
final ZanoWalletBase zanoWallet;
final List<Destination> destinations;
2024-03-16 10:55:03 +00:00
final BigInt fee;
final String comment;
2024-03-16 10:55:03 +00:00
final String assetId;
final String ticker;
final int decimalPoint;
final BigInt amount;
2023-10-02 14:17:35 +00:00
@override
String get id => transferResult?.txHash ?? '';
2023-10-02 14:17:35 +00:00
@override
String get hex => '';
@override
2024-03-16 10:55:03 +00:00
String get amountFormatted => '${ZanoFormatter.bigIntAmountToString(amount, decimalPoint)} $ticker';
2023-10-02 14:17:35 +00:00
@override
2024-03-16 10:55:03 +00:00
String get feeFormatted => '${ZanoFormatter.bigIntAmountToString(fee)} ZANO';
TransferResult? transferResult;
2023-10-02 14:17:35 +00:00
@override
Future<void> commit() async {
await zanoWallet.transfer(destinations, fee, comment);
2024-04-10 18:31:03 +00:00
zanoWallet.fetchTransactions();
2023-10-02 14:17:35 +00:00
}
@override
Future<String?> commitUR() {
throw UnimplementedError();
}
2023-10-02 14:17:35 +00:00
}