created controller for alarms

This commit is contained in:
2026-06-18 23:00:45 +02:00
parent 82a74a66b5
commit 999023e48a
+31
View File
@@ -0,0 +1,31 @@
import 'package:flutter/material.dart';
import '../model/alarm.dart';
import '../model/repositories/interfaces/alarm_repository.dart';
class AlarmController extends ChangeNotifier {
AlarmController(AlarmRepository repository) : _repository = repository {
_loadAlarms();
}
final AlarmRepository _repository;
final List<Alarm> _alarms = [];
Future<void> addAlarm(Alarm alarm) {
_alarms.add(alarm);
notifyListeners();
return _repository.createAlarm(alarm);
}
Future<void> deleteAlarm(Alarm alarm) {
_alarms.remove(alarm);
notifyListeners();
return _repository.deleteAlarm(alarm);
}
Future<void> _loadAlarms() {
_alarms.clear();
return _repository.loadAlarms().then((value) => _alarms.addAll(value));
}
}