mirror of
https://github.com/cypherstack/stack_wallet.git
synced 2024-11-18 10:11:03 +00:00
ccf5e68fc6
This reverts commit 84ac798bb8
.
76 lines
2 KiB
Dart
76 lines
2 KiB
Dart
import 'package:stackwallet/models/paynym/paynym_account_lite.dart';
|
|
import 'package:stackwallet/models/paynym/paynym_code.dart';
|
|
|
|
class PaynymAccount {
|
|
final String nymID;
|
|
final String nymName;
|
|
final bool segwit;
|
|
|
|
final List<PaynymCode> codes;
|
|
|
|
/// list of nymId
|
|
final List<PaynymAccountLite> followers;
|
|
|
|
/// list of nymId
|
|
final List<PaynymAccountLite> following;
|
|
|
|
PaynymCode get nonSegwitPaymentCode =>
|
|
codes.firstWhere((element) => !element.segwit);
|
|
|
|
PaynymAccount(
|
|
this.nymID,
|
|
this.nymName,
|
|
this.segwit,
|
|
this.codes,
|
|
this.followers,
|
|
this.following,
|
|
);
|
|
|
|
PaynymAccount.fromMap(Map<String, dynamic> map)
|
|
: nymID = map["nymID"] as String,
|
|
nymName = map["nymName"] as String,
|
|
segwit = map["segwit"] as bool,
|
|
codes = (map["codes"] as List<dynamic>)
|
|
.map((e) => PaynymCode.fromMap(Map<String, dynamic>.from(e as Map)))
|
|
.toList(),
|
|
followers = (map["followers"] as List<dynamic>)
|
|
.map((e) =>
|
|
PaynymAccountLite.fromMap(Map<String, dynamic>.from(e as Map)))
|
|
.toList(),
|
|
following = (map["following"] as List<dynamic>)
|
|
.map((e) =>
|
|
PaynymAccountLite.fromMap(Map<String, dynamic>.from(e as Map)))
|
|
.toList();
|
|
|
|
PaynymAccount copyWith({
|
|
String? nymID,
|
|
String? nymName,
|
|
bool? segwit,
|
|
List<PaynymCode>? codes,
|
|
List<PaynymAccountLite>? followers,
|
|
List<PaynymAccountLite>? following,
|
|
}) {
|
|
return PaynymAccount(
|
|
nymID ?? this.nymID,
|
|
nymName ?? this.nymName,
|
|
segwit ?? this.segwit,
|
|
codes ?? this.codes,
|
|
followers ?? this.followers,
|
|
following ?? this.following,
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toMap() => {
|
|
"nymID": nymID,
|
|
"nymName": nymName,
|
|
"segwit": segwit,
|
|
"codes": codes.map((e) => e.toMap()),
|
|
"followers": followers.map((e) => e.toMap()),
|
|
"following": followers.map((e) => e.toMap()),
|
|
};
|
|
|
|
@override
|
|
String toString() {
|
|
return toMap().toString();
|
|
}
|
|
}
|