Files
jamshalat-diary/lib/data/services/notification_orchestrator_service.dart
2026-03-18 00:07:10 +07:00

25 lines
878 B
Dart

import '../local/models/app_settings.dart';
import 'notification_event_producer_service.dart';
import 'notification_inbox_service.dart';
import 'remote_notification_content_service.dart';
/// High-level coordinator for non-prayer notification flows.
class NotificationOrchestratorService {
NotificationOrchestratorService._();
static final NotificationOrchestratorService instance =
NotificationOrchestratorService._();
Future<void> runPassivePass({
required AppSettings settings,
}) async {
await NotificationInboxService.instance.removeExpired();
await NotificationEventProducerService.instance.emitStreakRiskIfNeeded(
settings: settings,
);
await NotificationEventProducerService.instance.emitWeeklySummaryIfNeeded(
settings: settings,
);
await RemoteNotificationContentService.instance.sync(settings: settings);
}
}