33 lines
1.1 KiB
Dart
33 lines
1.1 KiB
Dart
import 'package:get_it/get_it.dart';
|
|
import 'data/database/hive_service.dart';
|
|
import 'data/repositories/hive_category_repository.dart';
|
|
import 'data/repositories/hive_tag_repository.dart';
|
|
import 'data/repositories/hive_transaction_repository.dart';
|
|
import 'data/repositories/interfaces/icategory_repository.dart';
|
|
import 'data/repositories/interfaces/itag_repository.dart';
|
|
import 'data/repositories/interfaces/itransaction_repository.dart';
|
|
import 'services/settings_service.dart';
|
|
|
|
final getIt = GetIt.instance;
|
|
|
|
Future<void> initDependencies() async {
|
|
// Инициализация Hive
|
|
await HiveService.init();
|
|
|
|
// Регистрация сервисов
|
|
getIt.registerSingleton<SettingsService>(SettingsService());
|
|
|
|
// Регистрация репозиториев
|
|
getIt.registerSingleton<ICategoryRepository>(
|
|
HiveCategoryRepository(HiveService.categories),
|
|
);
|
|
|
|
getIt.registerSingleton<ITagRepository>(
|
|
HiveTagRepository(HiveService.tags),
|
|
);
|
|
|
|
getIt.registerSingleton<ITransactionRepository>(
|
|
HiveTransactionRepository(HiveService.transactions),
|
|
);
|
|
}
|