import 'package:aves/model/availability.dart'; import 'package:aves/model/db/db_metadata.dart'; import 'package:aves/model/db/db_metadata_sqflite.dart'; import 'package:aves/model/settings/store/store.dart'; import 'package:aves/model/settings/store/store_shared_pref.dart'; import 'package:aves/services/android_app_service.dart'; import 'package:aves/services/device_service.dart'; import 'package:aves/services/media/embedded_data_service.dart'; import 'package:aves/services/media/media_file_service.dart'; import 'package:aves/services/media/media_store_service.dart'; import 'package:aves/services/metadata/metadata_edit_service.dart'; import 'package:aves/services/metadata/metadata_fetch_service.dart'; import 'package:aves/services/storage_service.dart'; import 'package:aves/services/window_service.dart'; import 'package:aves_report/aves_report.dart'; import 'package:aves_report_platform/aves_report_platform.dart'; import 'package:get_it/get_it.dart'; import 'package:path/path.dart' as p; final getIt = GetIt.instance; // fixed implementation is easier for test driver setup final SettingsStore settingsStore = SharedPrefSettingsStore(); final p.Context pContext = getIt(); final AvesAvailability availability = getIt(); final MetadataDb metadataDb = getIt(); final AndroidAppService androidAppService = getIt(); final DeviceService deviceService = getIt(); final EmbeddedDataService embeddedDataService = getIt(); final MediaFileService mediaFileService = getIt(); final MediaStoreService mediaStoreService = getIt(); final MetadataEditService metadataEditService = getIt(); final MetadataFetchService metadataFetchService = getIt(); final ReportService reportService = getIt(); final StorageService storageService = getIt(); final WindowService windowService = getIt(); void initPlatformServices() { getIt.registerLazySingleton(p.Context.new); getIt.registerLazySingleton(LiveAvesAvailability.new); getIt.registerLazySingleton(SqfliteMetadataDb.new); getIt.registerLazySingleton(PlatformAndroidAppService.new); getIt.registerLazySingleton(PlatformDeviceService.new); getIt.registerLazySingleton(PlatformEmbeddedDataService.new); getIt.registerLazySingleton(PlatformMediaFileService.new); getIt.registerLazySingleton(PlatformMediaStoreService.new); getIt.registerLazySingleton(PlatformMetadataEditService.new); getIt.registerLazySingleton(PlatformMetadataFetchService.new); getIt.registerLazySingleton(PlatformReportService.new); getIt.registerLazySingleton(PlatformStorageService.new); getIt.registerLazySingleton(PlatformWindowService.new); }