mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-12-23 03:59:23 +00:00
35 lines
1.1 KiB
Dart
35 lines
1.1 KiB
Dart
|
import 'package:cw_core/balance.dart';
|
||
|
import 'package:cw_nano/nano_util.dart';
|
||
|
|
||
|
BigInt stringAmountToBigInt(String amount) {
|
||
|
return BigInt.parse(NanoUtil.getAmountAsRaw(amount, NanoUtil.rawPerNano));
|
||
|
}
|
||
|
|
||
|
class NanoBalance extends Balance {
|
||
|
final BigInt currentBalance;
|
||
|
final BigInt receivableBalance;
|
||
|
late String formattedCurrentBalance;
|
||
|
late String formattedReceivableBalance;
|
||
|
|
||
|
NanoBalance({required this.currentBalance, required this.receivableBalance}) : super(0, 0) {
|
||
|
this.formattedCurrentBalance = "";
|
||
|
this.formattedReceivableBalance = "";
|
||
|
}
|
||
|
|
||
|
NanoBalance.fromString(
|
||
|
{required this.formattedCurrentBalance, required this.formattedReceivableBalance})
|
||
|
: currentBalance = stringAmountToBigInt(formattedCurrentBalance),
|
||
|
receivableBalance = stringAmountToBigInt(formattedReceivableBalance),
|
||
|
super(0, 0);
|
||
|
|
||
|
@override
|
||
|
String get formattedAvailableBalance {
|
||
|
return NanoUtil.getRawAsUsableString(currentBalance.toString(), NanoUtil.rawPerNano);
|
||
|
}
|
||
|
|
||
|
@override
|
||
|
String get formattedAdditionalBalance {
|
||
|
return NanoUtil.getRawAsUsableString(receivableBalance.toString(), NanoUtil.rawPerNano);
|
||
|
}
|
||
|
}
|