mirror of
https://github.com/cypherstack/stack_wallet.git
synced 2024-12-24 20:39:21 +00:00
73 lines
1.6 KiB
Dart
73 lines
1.6 KiB
Dart
import 'dart:ui';
|
|
|
|
import 'package:stackwallet/utilities/logger.dart';
|
|
|
|
class Pair {
|
|
final String from;
|
|
final String fromNetwork;
|
|
|
|
final String to;
|
|
final String toNetwork;
|
|
|
|
final bool fixedRate;
|
|
final bool floatingRate;
|
|
|
|
Pair({
|
|
required this.from,
|
|
required this.fromNetwork,
|
|
required this.to,
|
|
required this.toNetwork,
|
|
required this.fixedRate,
|
|
required this.floatingRate,
|
|
});
|
|
|
|
factory Pair.fromMap(Map<String, dynamic> map) {
|
|
try {
|
|
return Pair(
|
|
from: map["from"] as String,
|
|
fromNetwork: map["fromNetwork"] as String,
|
|
to: map["to"] as String,
|
|
toNetwork: map["toNetwork"] as String,
|
|
fixedRate: map["fixedRate"] as bool,
|
|
floatingRate: map["floatingRate"] as bool,
|
|
);
|
|
} catch (e, s) {
|
|
Logging.instance.log("Pair.fromMap(): $e\n$s", level: LogLevel.Error);
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Map<String, dynamic> toMap() {
|
|
return {
|
|
"from": from,
|
|
"fromNetwork": fromNetwork,
|
|
"to": to,
|
|
"toNetwork": toNetwork,
|
|
"fixedRate": fixedRate,
|
|
"floatingRate": floatingRate,
|
|
};
|
|
}
|
|
|
|
@override
|
|
bool operator ==(other) =>
|
|
other is Pair &&
|
|
from == other.from &&
|
|
fromNetwork == other.fromNetwork &&
|
|
to == other.to &&
|
|
toNetwork == other.toNetwork &&
|
|
fixedRate == other.fixedRate &&
|
|
floatingRate == other.floatingRate;
|
|
|
|
@override
|
|
int get hashCode => hashValues(
|
|
from,
|
|
fromNetwork,
|
|
to,
|
|
toNetwork,
|
|
fixedRate,
|
|
floatingRate,
|
|
);
|
|
|
|
@override
|
|
String toString() => "Pair: ${toMap()}";
|
|
}
|