33 lines
No EOL
1.1 KiB
Dart
33 lines
No EOL
1.1 KiB
Dart
|
|
class Settings {
|
|
static const Settings _defaultSettings = Settings(notificationsDenied: true, unreadCheckIntervalMinutes: 0);
|
|
final bool notificationsDenied;
|
|
final int unreadCheckIntervalMinutes;
|
|
|
|
const Settings({required this.notificationsDenied, required this.unreadCheckIntervalMinutes});
|
|
|
|
factory Settings.def() => _defaultSettings;
|
|
|
|
factory Settings.fromMap(Map map) {
|
|
return Settings(
|
|
notificationsDenied: map["notificationsDenied"] ?? _defaultSettings.notificationsDenied,
|
|
unreadCheckIntervalMinutes: map["unreadCheckIntervalMinutes"] ?? _defaultSettings.unreadCheckIntervalMinutes,
|
|
);
|
|
}
|
|
|
|
Map toMap() {
|
|
return {
|
|
"notificationsDenied": notificationsDenied,
|
|
"unreadCheckIntervalMinutes": unreadCheckIntervalMinutes,
|
|
};
|
|
}
|
|
|
|
Settings copy() => copyWith();
|
|
|
|
Settings copyWith({bool? notificationsDenied, int? unreadCheckIntervalMinutes}) {
|
|
return Settings(
|
|
notificationsDenied: notificationsDenied ?? this.notificationsDenied,
|
|
unreadCheckIntervalMinutes: unreadCheckIntervalMinutes ?? this.unreadCheckIntervalMinutes,
|
|
);
|
|
}
|
|
} |