LifeFlow/android/lib/services/database_service.dart

32 lines
1019 B
Dart

import 'package:hive_flutter/hive_flutter.dart';
import 'models/models.dart';
class DatabaseService {
static Future<void> initialize() async {
await Hive.initFlutter();
// Register adapters
Hive.registerAdapter(RoutineAdapter());
Hive.registerAdapter(ScheduleAdapter());
Hive.registerAdapter(ReminderAdapter());
Hive.registerAdapter(RoutineCategoryAdapter());
Hive.registerAdapter(ScheduleTypeAdapter());
Hive.registerAdapter(ActivityAdapter());
Hive.registerAdapter(MoodAdapter());
Hive.registerAdapter(GamificationStatsAdapter());
Hive.registerAdapter(BadgeAdapter());
Hive.registerAdapter(BadgeCategoryAdapter());
// Open boxes
await Hive.openBox<Routine>('routines');
await Hive.openBox<Activity>('activities');
await Hive.openBox<GamificationStats>('gamification');
await Hive.openBox('settings');
}
}
// Hive TypeAdapters - these need to be generated
generate_adapters() {
// Run: flutter packages pub run build_runner build
}