mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-26 06:08:40 +01:00
* commit generated files and remove codegen metadata * remove hive_generator dependency * update dependencies * update intl * update ios project files * update native code * update android deps * update image name in ci * revert impeller * re-ignore min version error * fix cw_decred dependency * update hive in cw_core * fix docker build cache for decred * fix conflict * prevent frozen coins being reset on coin info refresh * fix for makeSecure --------- Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
48 lines
1.1 KiB
Dart
48 lines
1.1 KiB
Dart
import 'package:cw_core/crypto_currency.dart';
|
|
import 'package:cw_core/hive_type_ids.dart';
|
|
import 'package:cw_core/keyable.dart';
|
|
import 'package:hive/hive.dart';
|
|
|
|
part 'contact.part.dart';
|
|
|
|
// @HiveType(typeId: Contact.typeId)
|
|
class Contact extends HiveObject with Keyable {
|
|
Contact({required this.name, required this.address, CryptoCurrency? type, DateTime? lastChange, this.displayName = ""})
|
|
: lastChange = lastChange ?? DateTime.now() {
|
|
if (type != null) {
|
|
raw = type.raw;
|
|
}
|
|
}
|
|
|
|
static const typeId = CONTACT_TYPE_ID;
|
|
static const boxName = 'Contacts';
|
|
|
|
// @HiveField(0, defaultValue: '')
|
|
String name;
|
|
|
|
// @HiveField(1, defaultValue: '')
|
|
String address;
|
|
|
|
// @HiveField(2, defaultValue: 0)
|
|
late int raw;
|
|
|
|
// @HiveField(3)
|
|
DateTime lastChange;
|
|
|
|
// @HiveField(4, defaultValue: "")
|
|
String displayName;
|
|
|
|
CryptoCurrency get type => CryptoCurrency.deserialize(raw: raw);
|
|
|
|
@override
|
|
dynamic get keyIndex => key;
|
|
|
|
@override
|
|
bool operator ==(Object o) => o is Contact && o.key == key;
|
|
|
|
@override
|
|
int get hashCode => key.hashCode;
|
|
|
|
void updateCryptoCurrency({required CryptoCurrency currency}) => raw = currency.raw;
|
|
}
|