Files
umbrix/lib/data/local/data_mappers.dart

38 lines
996 B
Dart
Raw Normal View History

2023-07-06 17:18:41 +03:30
import 'package:drift/drift.dart';
import 'package:hiddify/data/local/database.dart';
import 'package:hiddify/domain/profiles/profiles.dart';
extension ProfileMapper on Profile {
ProfileEntriesCompanion toCompanion() {
return ProfileEntriesCompanion.insert(
id: id,
active: active,
name: name,
url: url,
lastUpdate: lastUpdate,
upload: Value(subInfo?.upload),
download: Value(subInfo?.download),
total: Value(subInfo?.total),
expire: Value(subInfo?.expire),
updateInterval: Value(updateInterval),
);
}
static Profile fromEntry(ProfileEntry entry) {
return Profile(
id: entry.id,
active: entry.active,
name: entry.name,
url: entry.url,
lastUpdate: entry.lastUpdate,
updateInterval: entry.updateInterval,
subInfo: SubscriptionInfo(
upload: entry.upload,
download: entry.download,
total: entry.total,
expire: entry.expire,
),
);
}
}