refactored project structure

This commit is contained in:
marco committed 2026-07-17 17:08:31 +02:00
1 parent 3ceb0896a4
commit 02469faf52
23 files changed
+33 -33

No files matched your search

@@ -0,0 +1,7 @@
import '../alarm/alarm.dart' show AlarmType;
class CreateAlarmRequest {
const CreateAlarmRequest({required this.alarmType});
final AlarmType alarmType;
}
@@ -0,0 +1,9 @@
import '../alarm/alarm.dart';
import 'create_alarm_request.dart';
class CreateFixedTimeAlarmRequest extends CreateAlarmRequest {
final DateTime? triggerAt;
CreateFixedTimeAlarmRequest({this.triggerAt})
: super(alarmType: AlarmType.timeFixed);
}
@@ -0,0 +1,12 @@
import '../alarm/alarm.dart' show AlarmType;
import '../location.dart';
import 'create_alarm_request.dart';
class CreateLocationAlarmRequest extends CreateAlarmRequest {
final Location? location;
final int? radiusMeters;
const CreateLocationAlarmRequest({this.location, this.radiusMeters})
: super(alarmType: AlarmType.location);
}
@@ -0,0 +1,9 @@
import '../alarm/alarm.dart' show AlarmType;
import 'create_alarm_request.dart';
class CreateRelativeTimeAlarmRequest extends CreateAlarmRequest {
final DateTime? triggerAt;
CreateRelativeTimeAlarmRequest({this.triggerAt})
: super(alarmType: AlarmType.timeRelative);
}
@@ -0,0 +1,47 @@
import '../task.dart';
class CreateTaskRequest {
final String title;
final String description;
final DateTime? start;
final DateTime? due;
final bool isCompleted;
final String category;
final List<Task> subtasks;
final String url;
CreateTaskRequest({
required this.title,
required this.description,
required this.start,
required this.due,
required this.isCompleted,
required this.category,
required this.subtasks,
required this.url,
});
CreateTaskRequest.fromTask(Task task)
: title = task.title,
description = task.description,
start = task.start,
due = task.due,
isCompleted = task.isCompleted,
category = task.category,
subtasks = task.subtasks,
url = task.url;
Task toTask({required String id}) {
return Task(
id: id,
title: title,
description: description,
start: start,
due: due,
isCompleted: isCompleted,
category: category,
subtasks: subtasks,
url: url,
);
}
}