mirror of
				https://github.com/immich-app/immich.git
				synced 2025-10-31 02:27:08 -04:00 
			
		
		
		
	* add store entity and migration * make store service take both isar and drift repos * migrate and switch store on beta timeline state change * chore: make drift variables final * dispose old store before switching repos * use store to update values for beta timeline * change log service to use the proper store * migrate store when beta already enabled * use isar repository to check beta timeline in store service * remove unused update method from store repo * dispose after create * change watchAll signature in store repo * fix test * rename init isar to initDB * request user to close and reopen on beta migration * fix tests * handle empty version in migration * wait for cache to be populated after migration --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> Co-authored-by: Alex <alex.tran1502@gmail.com>
		
			
				
	
	
		
			41 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
| import 'package:immich_mobile/infrastructure/repositories/device_asset.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/local_album.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/local_asset.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/log.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/remote_album.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/storage.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/store.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/sync_api.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/sync_stream.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/user.repository.dart';
 | |
| import 'package:immich_mobile/infrastructure/repositories/user_api.repository.dart';
 | |
| import 'package:immich_mobile/repositories/drift_album_api_repository.dart';
 | |
| import 'package:mocktail/mocktail.dart';
 | |
| 
 | |
| class MockStoreRepository extends Mock implements IsarStoreRepository {}
 | |
| 
 | |
| class MockDriftStoreRepository extends Mock implements DriftStoreRepository {}
 | |
| 
 | |
| class MockLogRepository extends Mock implements LogRepository {}
 | |
| 
 | |
| class MockIsarUserRepository extends Mock implements IsarUserRepository {}
 | |
| 
 | |
| class MockDeviceAssetRepository extends Mock implements IsarDeviceAssetRepository {}
 | |
| 
 | |
| class MockSyncStreamRepository extends Mock implements SyncStreamRepository {}
 | |
| 
 | |
| class MockLocalAlbumRepository extends Mock implements DriftLocalAlbumRepository {}
 | |
| 
 | |
| class MockRemoteAlbumRepository extends Mock implements DriftRemoteAlbumRepository {}
 | |
| 
 | |
| class MockLocalAssetRepository extends Mock implements DriftLocalAssetRepository {}
 | |
| 
 | |
| class MockStorageRepository extends Mock implements StorageRepository {}
 | |
| 
 | |
| // API Repos
 | |
| class MockUserApiRepository extends Mock implements UserApiRepository {}
 | |
| 
 | |
| class MockSyncApiRepository extends Mock implements SyncApiRepository {}
 | |
| 
 | |
| class MockDriftAlbumApiRepository extends Mock implements DriftAlbumApiRepository {}
 |