diff --git a/lib/features/home/presentation/home_bindings.dart b/lib/features/home/presentation/home_bindings.dart index 112615af2..387363a50 100644 --- a/lib/features/home/presentation/home_bindings.dart +++ b/lib/features/home/presentation/home_bindings.dart @@ -8,8 +8,6 @@ import 'package:tmail_ui_user/features/cleanup/data/repository/cleanup_repositor import 'package:tmail_ui_user/features/cleanup/domain/repository/cleanup_repository.dart'; import 'package:tmail_ui_user/features/cleanup/domain/usecases/cleanup_email_cache_interactor.dart'; import 'package:tmail_ui_user/features/home/presentation/home_controller.dart'; -import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart'; -import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart'; import 'package:tmail_ui_user/features/login/domain/usecases/get_credential_interactor.dart'; import 'package:tmail_ui_user/features/thread/data/local/email_cache_manager.dart'; @@ -45,19 +43,16 @@ class HomeBindings extends BaseBindings { @override void bindingsInteractor() { - Get.lazyPut(() => GetCredentialInteractor(Get.find())); Get.lazyPut(() => CleanupEmailCacheInteractor(Get.find())); } @override void bindingsRepository() { - Get.lazyPut(() => Get.find()); Get.lazyPut(() => Get.find()); } @override void bindingsRepositoryImpl() { - Get.lazyPut(() => CredentialRepositoryImpl(Get.find())); Get.lazyPut(() => CleanupRepositoryImpl(Get.find())); } } \ No newline at end of file diff --git a/lib/features/session/presentation/session_page_bindings.dart b/lib/features/session/presentation/session_page_bindings.dart new file mode 100644 index 000000000..be9758be7 --- /dev/null +++ b/lib/features/session/presentation/session_page_bindings.dart @@ -0,0 +1,44 @@ +import 'package:get/get.dart'; +import 'package:tmail_ui_user/features/base/base_bindings.dart'; +import 'package:tmail_ui_user/features/caching/caching_manager.dart'; +import 'package:tmail_ui_user/features/login/domain/usecases/delete_credential_interactor.dart'; +import 'package:tmail_ui_user/features/session/domain/usecases/get_session_interactor.dart'; +import 'package:tmail_ui_user/features/session/presentation/session_controller.dart'; + +class SessionPageBindings extends BaseBindings { + + @override + void dependencies() { + super.dependencies(); + } + + @override + void bindingsController() { + Get.lazyPut(() => SessionController( + Get.find(), + Get.find(), + Get.find(), + )); + } + + @override + void bindingsDataSource() { + + } + + @override + void bindingsDataSourceImpl() { + } + + @override + void bindingsInteractor() { + } + + @override + void bindingsRepository() { + } + + @override + void bindingsRepositoryImpl() { + } +} \ No newline at end of file diff --git a/lib/main/bindings/credential/credential_bindings.dart b/lib/main/bindings/credential/credential_bindings.dart new file mode 100644 index 000000000..d5be4c8f9 --- /dev/null +++ b/lib/main/bindings/credential/credential_bindings.dart @@ -0,0 +1,29 @@ +import 'package:core/core.dart'; +import 'package:get/get.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart'; +import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart'; +import 'package:tmail_ui_user/features/login/domain/usecases/get_credential_interactor.dart'; + +class CredentialBindings extends Bindings { + + void dependencies() { + log('CredentialBindings::dependencies(): dmm credential goi vao day di'); + bindingsRepositoryImpl(); + bindingsRepository(); + bindingsInteractor(); + } + + void bindingsInteractor() { + Get.put(GetCredentialInteractor(Get.find())); + } + + void bindingsRepository() { + log('CredentialBindings::bindingsRepository(): dmm Put CredentialRepo '); + Get.put(Get.find()); + } + + void bindingsRepositoryImpl() { + Get.put(CredentialRepositoryImpl(Get.find())); + } +} \ No newline at end of file diff --git a/lib/main/bindings/main_bindings.dart b/lib/main/bindings/main_bindings.dart index 1b225f8c5..4f0da37b9 100644 --- a/lib/main/bindings/main_bindings.dart +++ b/lib/main/bindings/main_bindings.dart @@ -1,7 +1,9 @@ import 'package:get/get.dart'; import 'package:tmail_ui_user/main/bindings/core/core_bindings.dart'; +import 'package:tmail_ui_user/main/bindings/credential/credential_bindings.dart'; import 'package:tmail_ui_user/main/bindings/local/local_bindings.dart'; import 'package:tmail_ui_user/main/bindings/network/network_bindings.dart'; +import 'package:tmail_ui_user/main/bindings/session/session_bindings.dart'; class MainBindings extends Bindings { @override @@ -9,5 +11,7 @@ class MainBindings extends Bindings { await CoreBindings().dependencies(); NetworkBindings().dependencies(); LocalBindings().dependencies(); + CredentialBindings().dependencies(); + SessionBindings().dependencies(); } } \ No newline at end of file diff --git a/lib/features/session/presentation/session_bindings.dart b/lib/main/bindings/session/session_bindings.dart similarity index 52% rename from lib/features/session/presentation/session_bindings.dart rename to lib/main/bindings/session/session_bindings.dart index b3d25f0a7..2904a2e4a 100644 --- a/lib/features/session/presentation/session_bindings.dart +++ b/lib/main/bindings/session/session_bindings.dart @@ -1,8 +1,5 @@ import 'package:get/get.dart'; -import 'package:shared_preferences/shared_preferences.dart'; import 'package:tmail_ui_user/features/base/base_bindings.dart'; -import 'package:tmail_ui_user/features/caching/caching_manager.dart'; -import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart'; import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart'; import 'package:tmail_ui_user/features/login/domain/usecases/delete_credential_interactor.dart'; import 'package:tmail_ui_user/features/session/data/datasource/session_datasource.dart'; @@ -11,7 +8,6 @@ import 'package:tmail_ui_user/features/session/data/network/session_api.dart'; import 'package:tmail_ui_user/features/session/data/repository/session_repository_impl.dart'; import 'package:tmail_ui_user/features/session/domain/repository/session_repository.dart'; import 'package:tmail_ui_user/features/session/domain/usecases/get_session_interactor.dart'; -import 'package:tmail_ui_user/features/session/presentation/session_controller.dart'; class SessionBindings extends BaseBindings { @@ -22,38 +18,31 @@ class SessionBindings extends BaseBindings { @override void bindingsController() { - Get.lazyPut(() => SessionController( - Get.find(), - Get.find(), - Get.find(), - )); } @override void bindingsDataSource() { - Get.lazyPut(() => Get.find()); + Get.put(Get.find()); } @override void bindingsDataSourceImpl() { - Get.lazyPut(() => SessionDataSourceImpl(Get.find())); + Get.put(SessionDataSourceImpl(Get.find())); } @override void bindingsInteractor() { - Get.lazyPut(() => GetSessionInteractor(Get.find())); - Get.lazyPut(() => DeleteCredentialInteractor(Get.find())); + Get.put(GetSessionInteractor(Get.find())); + Get.put(DeleteCredentialInteractor(Get.find())); } @override void bindingsRepository() { - Get.lazyPut(() => Get.find()); - Get.lazyPut(() => Get.find()); + Get.put(Get.find()); } @override void bindingsRepositoryImpl() { - Get.lazyPut(() => SessionRepositoryImpl(Get.find())); - Get.lazyPut(() => CredentialRepositoryImpl(Get.find())); + Get.put(SessionRepositoryImpl(Get.find())); } } \ No newline at end of file diff --git a/lib/main/pages/app_pages.dart b/lib/main/pages/app_pages.dart index 7b7340434..0f5c1474a 100644 --- a/lib/main/pages/app_pages.dart +++ b/lib/main/pages/app_pages.dart @@ -4,19 +4,19 @@ import 'package:tmail_ui_user/features/composer/presentation/composer_view.dart' if (dart.library.html) 'package:tmail_ui_user/features/composer/presentation/composer_view_web.dart'; import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_bindings.dart'; import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_view.dart'; +import 'package:tmail_ui_user/features/email/presentation/email_view.dart'; import 'package:tmail_ui_user/features/home/presentation/home_bindings.dart'; import 'package:tmail_ui_user/features/home/presentation/home_view.dart'; import 'package:tmail_ui_user/features/login/presentation/login_bindings.dart'; import 'package:tmail_ui_user/features/login/presentation/login_view.dart'; -import 'package:tmail_ui_user/features/email/presentation/email_view.dart'; import 'package:tmail_ui_user/features/mailbox/presentation/mailbox_view.dart'; import 'package:tmail_ui_user/features/mailbox_creator/presentation/mailbox_creator_bindings.dart'; import 'package:tmail_ui_user/features/mailbox_creator/presentation/mailbox_creator_view.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/mailbox_dashboard_bindings.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart'; -import 'package:tmail_ui_user/features/thread/presentation/thread_view.dart'; -import 'package:tmail_ui_user/features/session/presentation/session_bindings.dart'; +import 'package:tmail_ui_user/features/session/presentation/session_page_bindings.dart'; import 'package:tmail_ui_user/features/session/presentation/session_view.dart'; +import 'package:tmail_ui_user/features/thread/presentation/thread_view.dart'; import 'package:tmail_ui_user/main/routes/app_routes.dart'; class AppPages { @@ -32,7 +32,7 @@ class AppPages { GetPage( name: AppRoutes.SESSION, page: () => SessionView(), - binding: SessionBindings()), + binding: SessionPageBindings()), GetPage( name: AppRoutes.MAILBOX, page: () => MailboxView()),