mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-12-23 12:09:43 +00:00
baad7f7469
* init * updates * nano updates * updates * updates * [skipci] wip deep link changes * fix deep links * minor fix * add reminder message on buy and exchange routes * [skip ci] font fixes * review updates * [skip ci] minor fix * save * fixes * minor code cleanup * minor potential fix
35 lines
1.2 KiB
Dart
35 lines
1.2 KiB
Dart
import 'package:cw_core/balance.dart';
|
|
import 'package:nanoutil/nanoutil.dart';
|
|
|
|
BigInt stringAmountToBigIntNano(String amount) {
|
|
return BigInt.parse(NanoAmounts.getAmountAsRaw(amount, NanoAmounts.rawPerNano));
|
|
}
|
|
|
|
class NanoBalance extends Balance {
|
|
final BigInt currentBalance;
|
|
final BigInt receivableBalance;
|
|
|
|
NanoBalance({required this.currentBalance, required this.receivableBalance}) : super(0, 0);
|
|
|
|
NanoBalance.fromFormattedString(
|
|
{required String formattedCurrentBalance, required String formattedReceivableBalance})
|
|
: currentBalance = stringAmountToBigIntNano(formattedCurrentBalance),
|
|
receivableBalance = stringAmountToBigIntNano(formattedReceivableBalance),
|
|
super(0, 0);
|
|
|
|
NanoBalance.fromRawString(
|
|
{required String currentBalance, required String receivableBalance})
|
|
: currentBalance = BigInt.parse(currentBalance),
|
|
receivableBalance = BigInt.parse(receivableBalance),
|
|
super(0, 0);
|
|
|
|
@override
|
|
String get formattedAvailableBalance {
|
|
return NanoAmounts.getRawAsUsableString(currentBalance.toString(), NanoAmounts.rawPerNano);
|
|
}
|
|
|
|
@override
|
|
String get formattedAdditionalBalance {
|
|
return NanoAmounts.getRawAsUsableString(receivableBalance.toString(), NanoAmounts.rawPerNano);
|
|
}
|
|
}
|