TF-1068 binding & extension
This commit is contained in:
@@ -5,6 +5,7 @@ import 'package:tmail_ui_user/features/caching/caching_manager.dart';
|
||||
import 'package:tmail_ui_user/features/cleanup/data/datasource/cleanup_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/cleanup/data/datasource_impl/cleanup_datasource_impl.dart';
|
||||
import 'package:tmail_ui_user/features/cleanup/data/local/recent_login_url_cache_manager.dart';
|
||||
import 'package:tmail_ui_user/features/cleanup/data/local/recent_login_username_cache_manager.dart';
|
||||
import 'package:tmail_ui_user/features/cleanup/data/local/recent_search_cache_manager.dart';
|
||||
import 'package:tmail_ui_user/features/cleanup/data/repository/cleanup_repository_impl.dart';
|
||||
import 'package:tmail_ui_user/features/cleanup/domain/repository/cleanup_repository.dart';
|
||||
@@ -70,6 +71,7 @@ class HomeBindings extends BaseBindings {
|
||||
Get.find<EmailCacheManager>(),
|
||||
Get.find<RecentSearchCacheManager>(),
|
||||
Get.find<RecentLoginUrlCacheManager>(),
|
||||
Get.find<RecentLoginUsernameCacheManager>(),
|
||||
));
|
||||
Get.lazyPut(() => HiveAccountDatasourceImpl(
|
||||
Get.find<AccountCacheManager>()
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
|
||||
import 'package:jmap_dart_client/jmap/core/extensions/date_time_extension.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/model/recent_login_username.dart';
|
||||
|
||||
extension ListRecentLoginUsernameExtension on List<RecentLoginUsername> {
|
||||
|
||||
void sortByCreationDate() {
|
||||
sort((recentUsername1, recentUsername2) {
|
||||
return recentUsername1.creationDate.compareToSort(recentUsername2.creationDate, false);
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -2,14 +2,17 @@ import 'package:core/core.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:tmail_ui_user/features/base/base_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/caching/recent_login_url_cache_client.dart';
|
||||
import 'package:tmail_ui_user/features/caching/recent_login_username_cache_client.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource/account_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource/authentication_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource/authentication_oidc_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource/login_url_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource/login_username_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource_impl/authentication_datasource_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource_impl/authentication_oidc_datasource_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource_impl/hive_account_datasource_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource_impl/login_url_datasource_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/datasource_impl/login_username_datasource_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/local/account_cache_manager.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/local/oidc_configuration_cache_manager.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/local/token_oidc_cache_manager.dart';
|
||||
@@ -20,20 +23,24 @@ import 'package:tmail_ui_user/features/login/data/repository/account_repository_
|
||||
import 'package:tmail_ui_user/features/login/data/repository/authentication_oidc_repository_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/repository/authentication_repository_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/repository/login_url_repository_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/data/repository/login_username_repository_impl.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/account_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/authentication_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/login_url_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/repository/login_username_repository.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/authenticate_oidc_on_browser_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/authentication_user_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/check_oidc_is_available_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_all_recent_login_url_on_mobile_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_all_recent_login_username_on_mobile_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_authentication_info_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_stored_oidc_configuration_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/get_token_oidc_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/save_login_url_on_mobile_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/domain/usecases/save_login_username_on_mobile_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/login/presentation/login_controller.dart';
|
||||
import 'package:tmail_ui_user/main/bindings/network/binding_tag.dart';
|
||||
|
||||
@@ -54,6 +61,8 @@ class LoginBindings extends BaseBindings {
|
||||
Get.find<GetStoredOidcConfigurationInteractor>(),
|
||||
Get.find<SaveLoginUrlOnMobileInteractor>(),
|
||||
Get.find<GetAllRecentLoginUrlOnMobileInteractor>(),
|
||||
Get.find<SaveLoginUsernameOnMobileInteractor>(),
|
||||
Get.find<GetAllRecentLoginUsernameOnMobileInteractor>(),
|
||||
));
|
||||
}
|
||||
|
||||
@@ -63,6 +72,8 @@ class LoginBindings extends BaseBindings {
|
||||
Get.lazyPut<AuthenticationOIDCDataSource>(() => Get.find<AuthenticationOIDCDataSourceImpl>());
|
||||
Get.lazyPut<AccountDatasource>(() => Get.find<HiveAccountDatasourceImpl>());
|
||||
Get.lazyPut<LoginUrlDataSource>(() => Get.find<LoginUrlDataSourceImpl>());
|
||||
Get.lazyPut<LoginUsernameDataSource>(() => Get.find<LoginUsernameDataSourceImpl>());
|
||||
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -80,6 +91,9 @@ class LoginBindings extends BaseBindings {
|
||||
Get.lazyPut(() => LoginUrlDataSourceImpl(
|
||||
Get.find<RecentLoginUrlCacheClient>()
|
||||
));
|
||||
Get.lazyPut(() => LoginUsernameDataSourceImpl(
|
||||
Get.find<RecentLoginUsernameCacheClient>()
|
||||
));
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -113,6 +127,12 @@ class LoginBindings extends BaseBindings {
|
||||
Get.find<LoginUrlRepository>(),
|
||||
));
|
||||
Get.lazyPut(() => GetAllRecentLoginUrlOnMobileInteractor(Get.find<LoginUrlRepository>()));
|
||||
Get.lazyPut(() => SaveLoginUsernameOnMobileInteractor(
|
||||
Get.find<LoginUsernameRepository>(),
|
||||
));
|
||||
Get.lazyPut(() => GetAllRecentLoginUsernameOnMobileInteractor(
|
||||
Get.find<LoginUsernameRepository>()
|
||||
));
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -121,6 +141,8 @@ class LoginBindings extends BaseBindings {
|
||||
Get.lazyPut<AuthenticationOIDCRepository>(() => Get.find<AuthenticationOIDCRepositoryImpl>());
|
||||
Get.lazyPut<AccountRepository>(() => Get.find<AccountRepositoryImpl>());
|
||||
Get.lazyPut<LoginUrlRepository>(() => Get.find<LoginUrlRepositoryImpl>());
|
||||
Get.lazyPut<LoginUsernameRepository>(() => Get.find<LoginUsernameRepositoryImpl>());
|
||||
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -129,5 +151,6 @@ class LoginBindings extends BaseBindings {
|
||||
Get.lazyPut(() => AuthenticationOIDCRepositoryImpl(Get.find<AuthenticationOIDCDataSource>()));
|
||||
Get.lazyPut(() => AccountRepositoryImpl(Get.find<AccountDatasource>()));
|
||||
Get.lazyPut(() => LoginUrlRepositoryImpl(Get.find<LoginUrlDataSource>()));
|
||||
Get.lazyPut(() => LoginUsernameRepositoryImpl(Get.find<LoginUsernameDataSource>()));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user