create toAlarm and fromAlarm

This commit is contained in:
2026-07-20 13:52:11 +02:00
parent 06de421ee2
commit 8113ce9c22
3 changed files with 27 additions and 2 deletions
@@ -1,9 +1,17 @@
import '../alarm/alarm.dart';
import '../alarm/fixed_time_alarm.dart';
import 'create_alarm_request.dart';
class CreateFixedTimeAlarmRequest extends CreateAlarmRequest {
final DateTime? triggerAt;
CreateFixedTimeAlarmRequest({this.triggerAt})
const CreateFixedTimeAlarmRequest({this.triggerAt})
: super(alarmType: AlarmType.timeFixed);
CreateFixedTimeAlarmRequest.fromAlarm(FixedTimeAlarm alarm)
: triggerAt = alarm.triggerAt,
super(alarmType: AlarmType.timeFixed);
FixedTimeAlarm toFixedTimeAlarm(String id) =>
FixedTimeAlarm(id: id, triggerAt: triggerAt!);
}
@@ -1,4 +1,5 @@
import '../alarm/alarm.dart' show AlarmType;
import '../alarm/location_alarm.dart';
import '../location.dart';
import 'create_alarm_request.dart';
@@ -9,4 +10,12 @@ class CreateLocationAlarmRequest extends CreateAlarmRequest {
const CreateLocationAlarmRequest({this.location, this.radiusMeters})
: super(alarmType: AlarmType.location);
CreateLocationAlarmRequest.fromAlarm(LocationAlarm alarm)
: location = alarm.location,
radiusMeters = alarm.radiusMeters,
super(alarmType: AlarmType.location);
LocationAlarm toLocationAlarm(String id) =>
LocationAlarm(id: id, location: location!, radiusMeters: radiusMeters!);
}
@@ -1,9 +1,17 @@
import '../alarm/alarm.dart' show AlarmType;
import '../alarm/relative_time_alarm.dart';
import 'create_alarm_request.dart';
class CreateRelativeTimeAlarmRequest extends CreateAlarmRequest {
final DateTime? triggerAt;
CreateRelativeTimeAlarmRequest({this.triggerAt})
const CreateRelativeTimeAlarmRequest({this.triggerAt})
: super(alarmType: AlarmType.timeRelative);
CreateRelativeTimeAlarmRequest.fromAlarm(RelativeTimeAlarm alarm)
: triggerAt = alarm.triggerAt,
super(alarmType: AlarmType.timeRelative);
RelativeTimeAlarm toRelativeTimeAlarm(String id) =>
RelativeTimeAlarm(id: id, triggerAt: triggerAt!);
}