2024-11-26 18:43:44 +00:00
|
|
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|
|
|
import 'package:immich_mobile/entities/album.entity.dart';
|
|
|
|
import 'package:immich_mobile/entities/asset.entity.dart';
|
|
|
|
import 'package:immich_mobile/entities/etag.entity.dart';
|
|
|
|
import 'package:immich_mobile/entities/exif_info.entity.dart';
|
|
|
|
import 'package:immich_mobile/entities/user.entity.dart';
|
|
|
|
import 'package:immich_mobile/interfaces/auth.interface.dart';
|
|
|
|
import 'package:immich_mobile/providers/db.provider.dart';
|
|
|
|
import 'package:immich_mobile/repositories/database.repository.dart';
|
|
|
|
|
|
|
|
final authRepositoryProvider = Provider<IAuthRepository>(
|
|
|
|
(ref) => AuthRepository(ref.watch(dbProvider)),
|
|
|
|
);
|
|
|
|
|
|
|
|
class AuthRepository extends DatabaseRepository implements IAuthRepository {
|
|
|
|
AuthRepository(super.db);
|
|
|
|
|
|
|
|
@override
|
|
|
|
Future<void> clearLocalData() {
|
2024-11-26 19:36:12 +00:00
|
|
|
return db.writeTxn(() {
|
|
|
|
return Future.wait([
|
|
|
|
db.assets.clear(),
|
|
|
|
db.exifInfos.clear(),
|
|
|
|
db.albums.clear(),
|
|
|
|
db.eTags.clear(),
|
|
|
|
db.users.clear(),
|
|
|
|
]);
|
2024-11-26 18:43:44 +00:00
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|