31 lines
644 B
Dart
31 lines
644 B
Dart
import 'alarm.dart';
|
|
|
|
class FixedTimeAlarm implements Alarm {
|
|
@override
|
|
final String id;
|
|
|
|
final DateTime triggerAt;
|
|
|
|
@override
|
|
final AlarmType alarmType;
|
|
|
|
const FixedTimeAlarm({required this.id, required this.triggerAt})
|
|
: alarmType = AlarmType.timeFixed;
|
|
|
|
factory FixedTimeAlarm.fromJson(Map<String, dynamic> json) {
|
|
return FixedTimeAlarm(
|
|
id: json['id'] as String,
|
|
triggerAt: DateTime.parse(json['triggerAt'] as String),
|
|
);
|
|
}
|
|
|
|
@override
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
'id': id,
|
|
'triggerAt': triggerAt.toIso8601String(),
|
|
'alarmType': alarmType.toJson(),
|
|
};
|
|
}
|
|
}
|