mirror of
https://github.com/immich-app/immich.git
synced 2025-08-07 09:04:09 -04:00
refactor(mobile): partner.interface.dart (#19338)
This commit is contained in:
parent
6fda863c08
commit
c707f9cef4
@ -1,8 +0,0 @@
|
|||||||
import 'package:immich_mobile/domain/models/user.model.dart';
|
|
||||||
|
|
||||||
abstract class IPartnerRepository {
|
|
||||||
Future<List<UserDto>> getSharedWith();
|
|
||||||
Future<List<UserDto>> getSharedBy();
|
|
||||||
Stream<List<UserDto>> watchSharedWith();
|
|
||||||
Stream<List<UserDto>> watchSharedBy();
|
|
||||||
}
|
|
@ -2,7 +2,6 @@ import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|||||||
import 'package:immich_mobile/domain/models/user.model.dart';
|
import 'package:immich_mobile/domain/models/user.model.dart';
|
||||||
import 'package:immich_mobile/infrastructure/entities/user.entity.dart'
|
import 'package:immich_mobile/infrastructure/entities/user.entity.dart'
|
||||||
as entity;
|
as entity;
|
||||||
import 'package:immich_mobile/interfaces/partner.interface.dart';
|
|
||||||
import 'package:immich_mobile/providers/db.provider.dart';
|
import 'package:immich_mobile/providers/db.provider.dart';
|
||||||
import 'package:immich_mobile/repositories/database.repository.dart';
|
import 'package:immich_mobile/repositories/database.repository.dart';
|
||||||
import 'package:isar/isar.dart';
|
import 'package:isar/isar.dart';
|
||||||
@ -11,11 +10,9 @@ final partnerRepositoryProvider = Provider(
|
|||||||
(ref) => PartnerRepository(ref.watch(dbProvider)),
|
(ref) => PartnerRepository(ref.watch(dbProvider)),
|
||||||
);
|
);
|
||||||
|
|
||||||
class PartnerRepository extends DatabaseRepository
|
class PartnerRepository extends DatabaseRepository {
|
||||||
implements IPartnerRepository {
|
|
||||||
PartnerRepository(super.db);
|
PartnerRepository(super.db);
|
||||||
|
|
||||||
@override
|
|
||||||
Future<List<UserDto>> getSharedBy() async {
|
Future<List<UserDto>> getSharedBy() async {
|
||||||
return (await db.users
|
return (await db.users
|
||||||
.filter()
|
.filter()
|
||||||
@ -26,7 +23,6 @@ class PartnerRepository extends DatabaseRepository
|
|||||||
.toList();
|
.toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Future<List<UserDto>> getSharedWith() async {
|
Future<List<UserDto>> getSharedWith() async {
|
||||||
return (await db.users
|
return (await db.users
|
||||||
.filter()
|
.filter()
|
||||||
@ -37,13 +33,11 @@ class PartnerRepository extends DatabaseRepository
|
|||||||
.toList();
|
.toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Stream<List<UserDto>> watchSharedBy() {
|
Stream<List<UserDto>> watchSharedBy() {
|
||||||
return (db.users.filter().isPartnerSharedByEqualTo(true).sortById().watch())
|
return (db.users.filter().isPartnerSharedByEqualTo(true).sortById().watch())
|
||||||
.map((users) => users.map((u) => u.toDto()).toList());
|
.map((users) => users.map((u) => u.toDto()).toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Stream<List<UserDto>> watchSharedWith() {
|
Stream<List<UserDto>> watchSharedWith() {
|
||||||
return (db.users
|
return (db.users
|
||||||
.filter()
|
.filter()
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||||
import 'package:immich_mobile/domain/models/user.model.dart';
|
import 'package:immich_mobile/domain/models/user.model.dart';
|
||||||
import 'package:immich_mobile/infrastructure/repositories/user.repository.dart';
|
import 'package:immich_mobile/infrastructure/repositories/user.repository.dart';
|
||||||
import 'package:immich_mobile/interfaces/partner.interface.dart';
|
|
||||||
import 'package:immich_mobile/providers/infrastructure/user.provider.dart';
|
import 'package:immich_mobile/providers/infrastructure/user.provider.dart';
|
||||||
import 'package:immich_mobile/repositories/partner.repository.dart';
|
import 'package:immich_mobile/repositories/partner.repository.dart';
|
||||||
import 'package:immich_mobile/repositories/partner_api.repository.dart';
|
import 'package:immich_mobile/repositories/partner_api.repository.dart';
|
||||||
@ -17,7 +16,7 @@ final partnerServiceProvider = Provider(
|
|||||||
|
|
||||||
class PartnerService {
|
class PartnerService {
|
||||||
final PartnerApiRepository _partnerApiRepository;
|
final PartnerApiRepository _partnerApiRepository;
|
||||||
final IPartnerRepository _partnerRepository;
|
final PartnerRepository _partnerRepository;
|
||||||
final IsarUserRepository _isarUserRepository;
|
final IsarUserRepository _isarUserRepository;
|
||||||
final Logger _log = Logger("PartnerService");
|
final Logger _log = Logger("PartnerService");
|
||||||
|
|
||||||
|
@ -17,7 +17,6 @@ import 'package:immich_mobile/interfaces/album.interface.dart';
|
|||||||
import 'package:immich_mobile/interfaces/asset.interface.dart';
|
import 'package:immich_mobile/interfaces/asset.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/etag.interface.dart';
|
import 'package:immich_mobile/interfaces/etag.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/local_files_manager.interface.dart';
|
import 'package:immich_mobile/interfaces/local_files_manager.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/partner.interface.dart';
|
|
||||||
import 'package:immich_mobile/providers/app_settings.provider.dart';
|
import 'package:immich_mobile/providers/app_settings.provider.dart';
|
||||||
import 'package:immich_mobile/providers/infrastructure/exif.provider.dart';
|
import 'package:immich_mobile/providers/infrastructure/exif.provider.dart';
|
||||||
import 'package:immich_mobile/providers/infrastructure/user.provider.dart';
|
import 'package:immich_mobile/providers/infrastructure/user.provider.dart';
|
||||||
@ -68,7 +67,7 @@ class SyncService {
|
|||||||
final IExifInfoRepository _exifInfoRepository;
|
final IExifInfoRepository _exifInfoRepository;
|
||||||
final IsarUserRepository _isarUserRepository;
|
final IsarUserRepository _isarUserRepository;
|
||||||
final UserService _userService;
|
final UserService _userService;
|
||||||
final IPartnerRepository _partnerRepository;
|
final PartnerRepository _partnerRepository;
|
||||||
final IETagRepository _eTagRepository;
|
final IETagRepository _eTagRepository;
|
||||||
final PartnerApiRepository _partnerApiRepository;
|
final PartnerApiRepository _partnerApiRepository;
|
||||||
final UserApiRepository _userApiRepository;
|
final UserApiRepository _userApiRepository;
|
||||||
|
@ -9,10 +9,10 @@ import 'package:immich_mobile/interfaces/backup_album.interface.dart';
|
|||||||
import 'package:immich_mobile/interfaces/etag.interface.dart';
|
import 'package:immich_mobile/interfaces/etag.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/file_media.interface.dart';
|
import 'package:immich_mobile/interfaces/file_media.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/local_files_manager.interface.dart';
|
import 'package:immich_mobile/interfaces/local_files_manager.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/partner.interface.dart';
|
|
||||||
import 'package:immich_mobile/repositories/partner_api.repository.dart';
|
import 'package:immich_mobile/repositories/partner_api.repository.dart';
|
||||||
import 'package:immich_mobile/repositories/album_media.repository.dart';
|
import 'package:immich_mobile/repositories/album_media.repository.dart';
|
||||||
import 'package:immich_mobile/repositories/album_api.repository.dart';
|
import 'package:immich_mobile/repositories/album_api.repository.dart';
|
||||||
|
import 'package:immich_mobile/repositories/partner.repository.dart';
|
||||||
import 'package:mocktail/mocktail.dart';
|
import 'package:mocktail/mocktail.dart';
|
||||||
|
|
||||||
class MockAlbumRepository extends Mock implements IAlbumRepository {}
|
class MockAlbumRepository extends Mock implements IAlbumRepository {}
|
||||||
@ -42,7 +42,7 @@ class MockAuthApiRepository extends Mock implements IAuthApiRepository {}
|
|||||||
|
|
||||||
class MockAuthRepository extends Mock implements IAuthRepository {}
|
class MockAuthRepository extends Mock implements IAuthRepository {}
|
||||||
|
|
||||||
class MockPartnerRepository extends Mock implements IPartnerRepository {}
|
class MockPartnerRepository extends Mock implements PartnerRepository {}
|
||||||
|
|
||||||
class MockPartnerApiRepository extends Mock implements PartnerApiRepository {}
|
class MockPartnerApiRepository extends Mock implements PartnerApiRepository {}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user