32 lines
1000 B
Dart
32 lines
1000 B
Dart
import 'package:get_it/get_it.dart';
|
|
import 'package:injectable/injectable.dart';
|
|
import 'package:shared_preferences/shared_preferences.dart';
|
|
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
|
|
|
|
|
|
import 'injection.config.dart';
|
|
|
|
/// Instance globale de GetIt pour l'injection de dépendances
|
|
final GetIt getIt = GetIt.instance;
|
|
|
|
/// Configure l'injection de dépendances
|
|
@InjectableInit()
|
|
Future<void> configureDependencies() async {
|
|
// Enregistrer SharedPreferences
|
|
final sharedPreferences = await SharedPreferences.getInstance();
|
|
getIt.registerSingleton<SharedPreferences>(sharedPreferences);
|
|
|
|
// Enregistrer FlutterLocalNotificationsPlugin
|
|
getIt.registerSingleton<FlutterLocalNotificationsPlugin>(
|
|
FlutterLocalNotificationsPlugin(),
|
|
);
|
|
|
|
// Initialiser les autres dépendances
|
|
getIt.init();
|
|
}
|
|
|
|
/// Réinitialise les dépendances (utile pour les tests)
|
|
Future<void> resetDependencies() async {
|
|
await getIt.reset();
|
|
await configureDependencies();
|
|
} |