mirror of
https://github.com/immich-app/immich.git
synced 2025-07-09 03:04:16 -04:00
refactor(mobile): auth_api.interface.dart (#19350)
This commit is contained in:
parent
af30d97668
commit
69b1331026
@ -1,14 +0,0 @@
|
|||||||
import 'package:immich_mobile/models/auth/login_response.model.dart';
|
|
||||||
|
|
||||||
abstract interface class IAuthApiRepository {
|
|
||||||
Future<LoginResponse> login(String email, String password);
|
|
||||||
|
|
||||||
Future<void> logout();
|
|
||||||
|
|
||||||
Future<void> changePassword(String newPassword);
|
|
||||||
|
|
||||||
Future<bool> unlockPinCode(String pinCode);
|
|
||||||
Future<void> lockPinCode();
|
|
||||||
|
|
||||||
Future<void> setupPinCode(String pinCode);
|
|
||||||
}
|
|
@ -1,5 +1,4 @@
|
|||||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||||
import 'package:immich_mobile/interfaces/auth_api.interface.dart';
|
|
||||||
import 'package:immich_mobile/models/auth/login_response.model.dart';
|
import 'package:immich_mobile/models/auth/login_response.model.dart';
|
||||||
import 'package:immich_mobile/providers/api.provider.dart';
|
import 'package:immich_mobile/providers/api.provider.dart';
|
||||||
import 'package:immich_mobile/repositories/api.repository.dart';
|
import 'package:immich_mobile/repositories/api.repository.dart';
|
||||||
@ -9,12 +8,11 @@ import 'package:openapi/api.dart';
|
|||||||
final authApiRepositoryProvider =
|
final authApiRepositoryProvider =
|
||||||
Provider((ref) => AuthApiRepository(ref.watch(apiServiceProvider)));
|
Provider((ref) => AuthApiRepository(ref.watch(apiServiceProvider)));
|
||||||
|
|
||||||
class AuthApiRepository extends ApiRepository implements IAuthApiRepository {
|
class AuthApiRepository extends ApiRepository {
|
||||||
final ApiService _apiService;
|
final ApiService _apiService;
|
||||||
|
|
||||||
AuthApiRepository(this._apiService);
|
AuthApiRepository(this._apiService);
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> changePassword(String newPassword) async {
|
Future<void> changePassword(String newPassword) async {
|
||||||
await _apiService.usersApi.updateMyUser(
|
await _apiService.usersApi.updateMyUser(
|
||||||
UserUpdateMeDto(
|
UserUpdateMeDto(
|
||||||
@ -23,7 +21,6 @@ class AuthApiRepository extends ApiRepository implements IAuthApiRepository {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Future<LoginResponse> login(String email, String password) async {
|
Future<LoginResponse> login(String email, String password) async {
|
||||||
final loginResponseDto = await checkNull(
|
final loginResponseDto = await checkNull(
|
||||||
_apiService.authenticationApi.login(
|
_apiService.authenticationApi.login(
|
||||||
@ -37,7 +34,6 @@ class AuthApiRepository extends ApiRepository implements IAuthApiRepository {
|
|||||||
return _mapLoginReponse(loginResponseDto);
|
return _mapLoginReponse(loginResponseDto);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> logout() async {
|
Future<void> logout() async {
|
||||||
await _apiService.authenticationApi
|
await _apiService.authenticationApi
|
||||||
.logout()
|
.logout()
|
||||||
@ -56,7 +52,6 @@ class AuthApiRepository extends ApiRepository implements IAuthApiRepository {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Future<bool> unlockPinCode(String pinCode) async {
|
Future<bool> unlockPinCode(String pinCode) async {
|
||||||
try {
|
try {
|
||||||
await _apiService.authenticationApi
|
await _apiService.authenticationApi
|
||||||
@ -67,13 +62,11 @@ class AuthApiRepository extends ApiRepository implements IAuthApiRepository {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> setupPinCode(String pinCode) {
|
Future<void> setupPinCode(String pinCode) {
|
||||||
return _apiService.authenticationApi
|
return _apiService.authenticationApi
|
||||||
.setupPinCode(PinCodeSetupDto(pinCode: pinCode));
|
.setupPinCode(PinCodeSetupDto(pinCode: pinCode));
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> lockPinCode() {
|
Future<void> lockPinCode() {
|
||||||
return _apiService.authenticationApi.lockAuthSession();
|
return _apiService.authenticationApi.lockAuthSession();
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,6 @@ import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|||||||
import 'package:immich_mobile/domain/models/store.model.dart';
|
import 'package:immich_mobile/domain/models/store.model.dart';
|
||||||
import 'package:immich_mobile/domain/utils/background_sync.dart';
|
import 'package:immich_mobile/domain/utils/background_sync.dart';
|
||||||
import 'package:immich_mobile/entities/store.entity.dart';
|
import 'package:immich_mobile/entities/store.entity.dart';
|
||||||
import 'package:immich_mobile/interfaces/auth_api.interface.dart';
|
|
||||||
import 'package:immich_mobile/models/auth/auxilary_endpoint.model.dart';
|
import 'package:immich_mobile/models/auth/auxilary_endpoint.model.dart';
|
||||||
import 'package:immich_mobile/models/auth/login_response.model.dart';
|
import 'package:immich_mobile/models/auth/login_response.model.dart';
|
||||||
import 'package:immich_mobile/providers/api.provider.dart';
|
import 'package:immich_mobile/providers/api.provider.dart';
|
||||||
@ -28,7 +27,7 @@ final authServiceProvider = Provider(
|
|||||||
);
|
);
|
||||||
|
|
||||||
class AuthService {
|
class AuthService {
|
||||||
final IAuthApiRepository _authApiRepository;
|
final AuthApiRepository _authApiRepository;
|
||||||
final AuthRepository _authRepository;
|
final AuthRepository _authRepository;
|
||||||
final ApiService _apiService;
|
final ApiService _apiService;
|
||||||
final NetworkService _networkService;
|
final NetworkService _networkService;
|
||||||
|
@ -3,7 +3,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/asset_api.interface.dart';
|
import 'package:immich_mobile/interfaces/asset_api.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/asset_media.interface.dart';
|
import 'package:immich_mobile/interfaces/asset_media.interface.dart';
|
||||||
import 'package:immich_mobile/interfaces/auth_api.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';
|
||||||
@ -13,6 +12,7 @@ import 'package:immich_mobile/repositories/local_files_manager.repository.dart';
|
|||||||
import 'package:immich_mobile/repositories/file_media.repository.dart';
|
import 'package:immich_mobile/repositories/file_media.repository.dart';
|
||||||
import 'package:immich_mobile/repositories/backup.repository.dart';
|
import 'package:immich_mobile/repositories/backup.repository.dart';
|
||||||
import 'package:immich_mobile/repositories/auth.repository.dart';
|
import 'package:immich_mobile/repositories/auth.repository.dart';
|
||||||
|
import 'package:immich_mobile/repositories/auth_api.repository.dart';
|
||||||
import 'package:mocktail/mocktail.dart';
|
import 'package:mocktail/mocktail.dart';
|
||||||
|
|
||||||
class MockAlbumRepository extends Mock implements IAlbumRepository {}
|
class MockAlbumRepository extends Mock implements IAlbumRepository {}
|
||||||
@ -37,7 +37,7 @@ class MockFileMediaRepository extends Mock implements FileMediaRepository {}
|
|||||||
|
|
||||||
class MockAlbumApiRepository extends Mock implements AlbumApiRepository {}
|
class MockAlbumApiRepository extends Mock implements AlbumApiRepository {}
|
||||||
|
|
||||||
class MockAuthApiRepository extends Mock implements IAuthApiRepository {}
|
class MockAuthApiRepository extends Mock implements AuthApiRepository {}
|
||||||
|
|
||||||
class MockAuthRepository extends Mock implements AuthRepository {}
|
class MockAuthRepository extends Mock implements AuthRepository {}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user