From b5e0569907641a4be1847fc0f42d300e0d57ad70 Mon Sep 17 00:00:00 2001 From: dab246 Date: Mon, 24 Oct 2022 15:53:30 +0700 Subject: [PATCH] TF-1074 Change name app routes --- .../reloadable/reloadable_controller.dart | 2 +- .../email/presentation/email_controller.dart | 19 ++++-------- .../home/presentation/home_controller.dart | 6 ++-- .../login/presentation/login_controller.dart | 4 +-- .../presentation/mailbox_controller.dart | 7 +++-- .../mailbox_creator_controller.dart | 2 +- .../advanced_filter_controller.dart | 2 +- .../mailbox_dashboard_controller.dart | 23 +++++++------- .../presentation/mailbox_dashboard_view.dart | 13 ++++---- .../mailbox_dashboard_view_web.dart | 24 +++++++-------- .../presentation/model/dashboard_routes.dart | 6 ++++ .../email_rules/email_rules_controller.dart | 4 +-- .../forward/forward_controller.dart | 2 +- .../manage_account_dashboard_controller.dart | 4 +-- .../identities/identities_controller.dart | 4 +-- .../rules_filter_creator_controller.dart | 2 +- .../presentation/search_email_controller.dart | 7 +++-- .../presentation/session_controller.dart | 4 +-- .../mixin/email_action_controller.dart | 5 ++-- .../presentation/thread_controller.dart | 11 +++---- lib/main.dart | 2 +- lib/main/pages/app_pages.dart | 28 ++++++++--------- lib/main/routes/app_routes.dart | 30 +++++++++---------- 23 files changed, 104 insertions(+), 107 deletions(-) create mode 100644 lib/features/mailbox_dashboard/presentation/model/dashboard_routes.dart diff --git a/lib/features/base/reloadable/reloadable_controller.dart b/lib/features/base/reloadable/reloadable_controller.dart index 0dd300c60..e7aba4c68 100644 --- a/lib/features/base/reloadable/reloadable_controller.dart +++ b/lib/features/base/reloadable/reloadable_controller.dart @@ -91,7 +91,7 @@ abstract class ReloadableController extends BaseController { } void _goToLogin({LoginArguments? arguments}) { - pushAndPopAll(AppRoutes.LOGIN, arguments: arguments); + pushAndPopAll(AppRoutes.login, arguments: arguments); } void _setUpInterceptors(GetCredentialViewState credentialViewState) { diff --git a/lib/features/email/presentation/email_controller.dart b/lib/features/email/presentation/email_controller.dart index 03439c3b7..efc62a7d0 100644 --- a/lib/features/email/presentation/email_controller.dart +++ b/lib/features/email/presentation/email_controller.dart @@ -49,6 +49,7 @@ import 'package:tmail_ui_user/features/email/presentation/widgets/email_address_ import 'package:tmail_ui_user/features/email/presentation/widgets/email_address_dialog_builder.dart'; import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_actions.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/download/download_task_state.dart'; import 'package:tmail_ui_user/features/manage_account/domain/state/get_all_identities_state.dart'; import 'package:tmail_ui_user/features/manage_account/domain/usecases/get_all_identities_interactor.dart'; @@ -501,7 +502,7 @@ class EmailController extends BaseController with AppLoaderMixin { if (currentMailbox != null && accountId != null) { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments(accountId, MailboxActions.moveEmail) ); @@ -745,10 +746,6 @@ class EmailController extends BaseController with AppLoaderMixin { mailboxRole: mailboxDashBoardController.selectedMailbox.value?.role); mailboxDashBoardController.goToComposer(arguments); - - if (BuildUtils.isWeb && Get.currentRoute == AppRoutes.EMAIL) { - popBack(); - } } } @@ -895,21 +892,18 @@ class EmailController extends BaseController with AppLoaderMixin { _currentEmailId = null; if (mailboxDashBoardController.searchController.isSearchEmailRunning) { if (responsiveUtils.isWebDesktop(context)) { - mailboxDashBoardController.dispatchRoute(AppRoutes.THREAD); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.thread); } else { - mailboxDashBoardController.dispatchRoute(AppRoutes.SEARCH_EMAIL); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.searchEmail); } } else { - mailboxDashBoardController.dispatchRoute(AppRoutes.THREAD); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.thread); } } void pressEmailAction(EmailActionType emailActionType) { if (emailActionType == EmailActionType.compose) { mailboxDashBoardController.goToComposer(ComposerArguments()); - if (BuildUtils.isWeb && Get.currentRoute == AppRoutes.EMAIL) { - popBack(); - } } else { final arguments = ComposerArguments( emailActionType: emailActionType, @@ -919,9 +913,6 @@ class EmailController extends BaseController with AppLoaderMixin { mailboxRole: mailboxDashBoardController.selectedMailbox.value?.role); mailboxDashBoardController.goToComposer(arguments); - if (BuildUtils.isWeb && Get.currentRoute == AppRoutes.EMAIL) { - popBack(); - } } } } \ No newline at end of file diff --git a/lib/features/home/presentation/home_controller.dart b/lib/features/home/presentation/home_controller.dart index 183d6cfc7..2843c5207 100644 --- a/lib/features/home/presentation/home_controller.dart +++ b/lib/features/home/presentation/home_controller.dart @@ -125,7 +125,7 @@ class HomeController extends BaseController { } void _goToLogin({LoginArguments? arguments}) { - pushAndPop(AppRoutes.LOGIN, arguments: arguments); + pushAndPop(AppRoutes.login, arguments: arguments); } @override @@ -198,7 +198,7 @@ class HomeController extends BaseController { _authorizationIsolateInterceptors.setTokenAndAuthorityOidc( newToken: storedTokenOidcSuccess.tokenOidc.toToken(), newConfig: storedTokenOidcSuccess.oidcConfiguration); - pushAndPop(AppRoutes.SESSION); + pushAndPop(AppRoutes.session); } void _goToSessionWithBasicAuth(GetCredentialViewState credentialViewState) { @@ -211,6 +211,6 @@ class HomeController extends BaseController { credentialViewState.userName.userName, credentialViewState.password.value, ); - pushAndPop(AppRoutes.SESSION); + pushAndPop(AppRoutes.session); } } \ No newline at end of file diff --git a/lib/features/login/presentation/login_controller.dart b/lib/features/login/presentation/login_controller.dart index 96ef9ea98..8f9e40cc3 100644 --- a/lib/features/login/presentation/login_controller.dart +++ b/lib/features/login/presentation/login_controller.dart @@ -313,7 +313,7 @@ class LoginController extends BaseController { _authorizationIsolateInterceptors.setTokenAndAuthorityOidc( newToken: success.tokenOIDC.toToken(), newConfig: config); - pushAndPop(AppRoutes.SESSION); + pushAndPop(AppRoutes.session); } void _loginAction(Uri baseUrl, UserName userName, Password password) async { @@ -329,7 +329,7 @@ class LoginController extends BaseController { _dynamicUrlInterceptors.changeBaseUrl(kIsWeb ? AppConfig.baseUrl : _urlText); _authorizationInterceptors.setBasicAuthorization(_userNameText, _passwordText); _authorizationIsolateInterceptors.setBasicAuthorization(_userNameText, _passwordText); - pushAndPop(AppRoutes.SESSION); + pushAndPop(AppRoutes.session); } void _loginFailureAction(FeatureFailure failure) { diff --git a/lib/features/mailbox/presentation/mailbox_controller.dart b/lib/features/mailbox/presentation/mailbox_controller.dart index 8d2aceef7..ee8a67713 100644 --- a/lib/features/mailbox/presentation/mailbox_controller.dart +++ b/lib/features/mailbox/presentation/mailbox_controller.dart @@ -58,6 +58,7 @@ import 'package:tmail_ui_user/features/mailbox_creator/presentation/model/mailbo import 'package:tmail_ui_user/features/mailbox_creator/presentation/model/new_mailbox_arguments.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/domain/state/remove_email_drafts_state.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/thread/domain/model/search_query.dart'; import 'package:tmail_ui_user/features/thread/domain/state/empty_trash_folder_state.dart'; import 'package:tmail_ui_user/features/thread/domain/state/mark_as_multiple_email_read_state.dart'; @@ -368,7 +369,7 @@ class MailboxController extends BaseMailboxController { if (_responsiveUtils.hasLeftMenuDrawerActive(context)) { mailboxDashBoardController.closeMailboxMenuDrawer(); } else { - mailboxDashBoardController.dispatchRoute(AppRoutes.THREAD); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.thread); } } @@ -383,7 +384,7 @@ class MailboxController extends BaseMailboxController { final accountId = mailboxDashBoardController.accountId.value; if (accountId != null) { final newMailboxArguments = await push( - AppRoutes.MAILBOX_CREATOR, + AppRoutes.mailboxCreator, arguments: MailboxCreatorArguments(accountId, defaultMailboxTree.value, folderMailboxTree.value) ); @@ -815,7 +816,7 @@ class MailboxController extends BaseMailboxController { final accountId = mailboxDashBoardController.accountId.value; if (accountId != null) { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments( accountId, MailboxActions.move, diff --git a/lib/features/mailbox_creator/presentation/mailbox_creator_controller.dart b/lib/features/mailbox_creator/presentation/mailbox_creator_controller.dart index 3de21d314..bf7f229d2 100644 --- a/lib/features/mailbox_creator/presentation/mailbox_creator_controller.dart +++ b/lib/features/mailbox_creator/presentation/mailbox_creator_controller.dart @@ -143,7 +143,7 @@ class MailboxCreatorController extends BaseController { if (accountId != null) { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments( accountId!, MailboxActions.create, diff --git a/lib/features/mailbox_dashboard/presentation/controller/advanced_filter_controller.dart b/lib/features/mailbox_dashboard/presentation/controller/advanced_filter_controller.dart index 0d0aace35..5c157df53 100644 --- a/lib/features/mailbox_dashboard/presentation/controller/advanced_filter_controller.dart +++ b/lib/features/mailbox_dashboard/presentation/controller/advanced_filter_controller.dart @@ -136,7 +136,7 @@ class AdvancedFilterController extends BaseController { void selectedMailBox() async { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments( _mailboxDashBoardController.accountId.value!, MailboxActions.select, diff --git a/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart b/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart index adc8d02fd..cfbb04b14 100644 --- a/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart +++ b/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart @@ -51,6 +51,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/download/download_controller.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/search_controller.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/composer_overlay_state.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/download/download_task_state.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/quick_search_filter.dart'; @@ -113,7 +114,7 @@ class MailboxDashBoardController extends ReloadableController { final accountId = Rxn(); final userProfile = Rxn(); final dashBoardAction = Rxn(); - final routePath = AppRoutes.MAILBOX_DASHBOARD.obs; + final dashboardRoute = DashboardRoutes.thread.obs; final appInformation = Rxn(); final currentSelectMode = SelectMode.INACTIVE.obs; final filterMessageOption = FilterMessageOption.all.obs; @@ -163,7 +164,7 @@ class MailboxDashBoardController extends ReloadableController { @override void onReady() { log('MailboxDashBoardController::onReady()'); - dispatchRoute(AppRoutes.THREAD); + dispatchRoute(DashboardRoutes.thread); _registerPendingEmailAddress(); _registerPendingFileInfo(); _setSessionCurrent(); @@ -425,7 +426,7 @@ class MailboxDashBoardController extends ReloadableController { bool _searchInsideEmailDetailedViewIsActive(BuildContext context) { return BuildUtils.isWeb && _responsiveUtils.isDesktop(context) - && routePath.value == AppRoutes.EMAIL; + && dashboardRoute.value == DashboardRoutes.emailDetailed; } void _unSelectedMailbox() { @@ -433,7 +434,7 @@ class MailboxDashBoardController extends ReloadableController { } void _closeEmailDetailedView() { - dispatchRoute(AppRoutes.THREAD); + dispatchRoute(DashboardRoutes.thread); clearSelectedEmail(); } @@ -619,7 +620,7 @@ class MailboxDashBoardController extends ReloadableController { ) async { if (accountId.value != null) { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments(accountId.value!, MailboxActions.moveEmail)); if (destinationMailbox != null && destinationMailbox is PresentationMailbox) { @@ -968,10 +969,10 @@ class MailboxDashBoardController extends ReloadableController { composerOverlayState.value = ComposerOverlayState.inActive; } - void dispatchRoute(String route) { - routePath.value = route; + void dispatchRoute(DashboardRoutes route) { + dashboardRoute.value = route; - if (routePath.value == AppRoutes.SEARCH_EMAIL) { + if (dashboardRoute.value == DashboardRoutes.searchEmail) { searchController.enableSearch(); } } @@ -1072,7 +1073,7 @@ class MailboxDashBoardController extends ReloadableController { openComposerOverlay(arguments); } } else { - push(AppRoutes.COMPOSER, arguments: arguments); + push(AppRoutes.composer, arguments: arguments); } } @@ -1084,7 +1085,7 @@ class MailboxDashBoardController extends ReloadableController { if (isDrawerOpen) { closeMailboxMenuDrawer(); } - final result = await push(AppRoutes.MANAGE_ACCOUNT, + final result = await push(AppRoutes.settings, arguments: ManageAccountArguments(sessionCurrent)); if (result is VacationResponse) { @@ -1139,7 +1140,7 @@ class MailboxDashBoardController extends ReloadableController { } void goToVacationSetting() async { - final result = await push(AppRoutes.MANAGE_ACCOUNT, + final result = await push(AppRoutes.settings, arguments: ManageAccountArguments( sessionCurrent, menuSettingCurrent: AccountMenuItem.vacation)); diff --git a/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart b/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart index 06946d3ce..3104599bd 100644 --- a/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart +++ b/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart @@ -1,12 +1,13 @@ -import 'package:core/core.dart'; +import 'package:core/presentation/utils/responsive_utils.dart'; +import 'package:core/presentation/views/responsive/responsive_widget.dart'; import 'package:flutter/material.dart'; import 'package:get/get.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_dashboard/presentation/base_mailbox_dashboard_view.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/search/presentation/search_email_view.dart'; import 'package:tmail_ui_user/features/thread/presentation/thread_view.dart'; -import 'package:tmail_ui_user/main/routes/app_routes.dart'; class MailboxDashBoardView extends BaseMailboxDashBoardView { @@ -47,8 +48,8 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { drawerEnableOpenDragGesture: responsiveUtils.hasLeftMenuDrawerActive(context), body: Stack(children: [ Obx(() { - switch(controller.routePath.value) { - case AppRoutes.THREAD: + switch(controller.dashboardRoute.value) { + case DashboardRoutes.thread: return ResponsiveWidget( responsiveUtils: responsiveUtils, desktop: controller.searchController.isSearchEmailRunning @@ -61,7 +62,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { ? EmailView() : bodyLandscapeTablet, mobile: ThreadView()); - case AppRoutes.EMAIL: + case DashboardRoutes.emailDetailed: return ResponsiveWidget( responsiveUtils: responsiveUtils, desktop: controller.searchController.isSearchEmailRunning @@ -74,7 +75,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { ? EmailView() : bodyLandscapeTablet, mobile: EmailView()); - case AppRoutes.SEARCH_EMAIL: + case DashboardRoutes.searchEmail: return SafeArea(child: SearchEmailView()); default: return ResponsiveWidget( diff --git a/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view_web.dart b/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view_web.dart index f788dd47f..b8adbbc57 100644 --- a/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view_web.dart +++ b/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view_web.dart @@ -12,6 +12,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/base_mailb import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/app_grid_dashboard_controller.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/search_controller.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/composer_overlay_state.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/quick_search_filter.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_overlay.dart'; @@ -25,7 +26,6 @@ import 'package:tmail_ui_user/features/search/presentation/search_email_view.dar import 'package:tmail_ui_user/features/thread/domain/model/filter_message_option.dart'; import 'package:tmail_ui_user/features/thread/presentation/thread_view.dart'; import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; -import 'package:tmail_ui_user/main/routes/app_routes.dart'; import 'package:tmail_ui_user/main/routes/route_navigation.dart'; import 'package:tmail_ui_user/main/utils/app_config.dart'; @@ -109,8 +109,8 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { _buildListButtonQuickSearchFilter(context), _buildMarkAsMailboxReadLoading(context), Expanded(child: Obx(() { - switch(controller.routePath.value) { - case AppRoutes.THREAD: + switch(controller.dashboardRoute.value) { + case DashboardRoutes.thread: return Container( margin: const EdgeInsets.only(right: 16, top: 16, bottom: 16), decoration: BoxDecoration( @@ -151,7 +151,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { ]), ), ); - case AppRoutes.EMAIL: + case DashboardRoutes.emailDetailed: return EmailView(); default: return const SizedBox.shrink(); @@ -163,10 +163,10 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { ]), ), tabletLarge: Obx(() { - switch(controller.routePath.value) { - case AppRoutes.SEARCH_EMAIL: + switch(controller.dashboardRoute.value) { + case DashboardRoutes.searchEmail: return SearchEmailView(); - case AppRoutes.EMAIL: + case DashboardRoutes.emailDetailed: return controller.searchController.isSearchEmailRunning ? EmailView() : Row( @@ -191,12 +191,12 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { } }), mobile: Obx(() { - switch(controller.routePath.value) { - case AppRoutes.THREAD: + switch(controller.dashboardRoute.value) { + case DashboardRoutes.thread: return ThreadView(); - case AppRoutes.EMAIL: + case DashboardRoutes.emailDetailed: return EmailView(); - case AppRoutes.SEARCH_EMAIL: + case DashboardRoutes.searchEmail: return SearchEmailView(); default: return ThreadView(); @@ -463,7 +463,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { return controller.searchController.isSearchActive() && controller.searchController.searchIsActive.isTrue && responsiveUtils.isWebDesktop(context) - && controller.routePath.value != AppRoutes.EMAIL; + && controller.dashboardRoute.value != DashboardRoutes.emailDetailed; } Widget _buildListButtonQuickSearchFilter(BuildContext context) { diff --git a/lib/features/mailbox_dashboard/presentation/model/dashboard_routes.dart b/lib/features/mailbox_dashboard/presentation/model/dashboard_routes.dart new file mode 100644 index 000000000..de89e2f79 --- /dev/null +++ b/lib/features/mailbox_dashboard/presentation/model/dashboard_routes.dart @@ -0,0 +1,6 @@ + +enum DashboardRoutes { + thread, + emailDetailed, + searchEmail +} \ No newline at end of file diff --git a/lib/features/manage_account/presentation/email_rules/email_rules_controller.dart b/lib/features/manage_account/presentation/email_rules/email_rules_controller.dart index 5d7376427..2664cf6aa 100644 --- a/lib/features/manage_account/presentation/email_rules/email_rules_controller.dart +++ b/lib/features/manage_account/presentation/email_rules/email_rules_controller.dart @@ -90,7 +90,7 @@ class EmailRulesController extends BaseController { _openRulesFilterCreatorOverlay(); } else { push( - AppRoutes.RULES_FILTER_CREATOR, + AppRoutes.rulesFilterCreator, ); } } @@ -131,7 +131,7 @@ class EmailRulesController extends BaseController { _openRulesFilterCreatorOverlay(); } else { push( - AppRoutes.RULES_FILTER_CREATOR, + AppRoutes.rulesFilterCreator, ); } } diff --git a/lib/features/manage_account/presentation/forward/forward_controller.dart b/lib/features/manage_account/presentation/forward/forward_controller.dart index ecbf69c74..27cd79804 100644 --- a/lib/features/manage_account/presentation/forward/forward_controller.dart +++ b/lib/features/manage_account/presentation/forward/forward_controller.dart @@ -245,7 +245,7 @@ class ForwardController extends BaseController { if (kIsWeb) { _openMailsForwardCreatorOverlay(); } else { - push(AppRoutes.EMAILS_FORWARD_CREATOR); + push(AppRoutes.emailsForwardCreator); } } } diff --git a/lib/features/manage_account/presentation/manage_account_dashboard_controller.dart b/lib/features/manage_account/presentation/manage_account_dashboard_controller.dart index 4d2ab3de2..124b06018 100644 --- a/lib/features/manage_account/presentation/manage_account_dashboard_controller.dart +++ b/lib/features/manage_account/presentation/manage_account_dashboard_controller.dart @@ -194,7 +194,7 @@ class ManageAccountDashBoardController extends ReloadableController { } void goToSettings() { - pushAndPop(AppRoutes.MANAGE_ACCOUNT, + pushAndPop(AppRoutes.settings, arguments: ManageAccountArguments(sessionCurrent.value)); } @@ -206,7 +206,7 @@ class ManageAccountDashBoardController extends ReloadableController { popBack(result: vacationResponse.value); } else { log('ManageAccountDashBoardController::backToMailboxDashBoard(): canBack: FALSE'); - pushAndPopAll(AppRoutes.MAILBOX_DASHBOARD, arguments: sessionCurrent); + pushAndPopAll(AppRoutes.dashboard, arguments: sessionCurrent); } } diff --git a/lib/features/manage_account/presentation/profiles/identities/identities_controller.dart b/lib/features/manage_account/presentation/profiles/identities/identities_controller.dart index 87e53e0f4..6f96f271f 100644 --- a/lib/features/manage_account/presentation/profiles/identities/identities_controller.dart +++ b/lib/features/manage_account/presentation/profiles/identities/identities_controller.dart @@ -169,7 +169,7 @@ class IdentitiesController extends BaseController { if (kIsWeb) { _openIdentityCreatorOverlay(); } else { - push(AppRoutes.IDENTITY_CREATOR); + push(AppRoutes.identityCreator); } } } @@ -295,7 +295,7 @@ class IdentitiesController extends BaseController { if (kIsWeb) { _openIdentityCreatorOverlay(); } else { - push(AppRoutes.IDENTITY_CREATOR); + push(AppRoutes.identityCreator); } } } diff --git a/lib/features/rules_filter_creator/presentation/rules_filter_creator_controller.dart b/lib/features/rules_filter_creator/presentation/rules_filter_creator_controller.dart index f8013b4d9..0a70c2df5 100644 --- a/lib/features/rules_filter_creator/presentation/rules_filter_creator_controller.dart +++ b/lib/features/rules_filter_creator/presentation/rules_filter_creator_controller.dart @@ -193,7 +193,7 @@ class RulesFilterCreatorController extends BaseMailboxController { void selectMailbox(BuildContext context) async { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments( _accountId!, MailboxActions.selectForRuleAction)); diff --git a/lib/features/search/presentation/search_email_controller.dart b/lib/features/search/presentation/search_email_controller.dart index c3e373644..3d8875e4b 100644 --- a/lib/features/search/presentation/search_email_controller.dart +++ b/lib/features/search/presentation/search_email_controller.dart @@ -30,6 +30,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/domain/state/quick_sear import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/get_all_recent_search_latest_interactor.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/quick_search_email_interactor.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/save_recent_search_interactor.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/quick_search_filter.dart'; import 'package:tmail_ui_user/features/search/domain/state/refresh_changes_search_email_state.dart'; @@ -415,7 +416,7 @@ class SearchEmailController extends BaseController void selectMailboxForSearchFilter(BuildContext context, PresentationMailbox? mailbox) async { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments( mailboxDashBoardController.accountId.value!, MailboxActions.select, @@ -440,7 +441,7 @@ class SearchEmailController extends BaseController if (accountId != null && session != null) { final listContactSelected = simpleSearchFilter.value.getContactApplied(prefixEmailAddress); final newContact = await push( - AppRoutes.CONTACT, + AppRoutes.contact, arguments: ContactArguments(accountId!, session!, listContactSelected)); if (newContact is EmailAddress) { @@ -538,7 +539,7 @@ class SearchEmailController extends BaseController clearAllResultSearch(); FocusScope.of(context).unfocus(); mailboxDashBoardController.searchController.disableSearch(); - mailboxDashBoardController.dispatchRoute(AppRoutes.THREAD); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.thread); SearchEmailBindings().disposeBindings(); } diff --git a/lib/features/session/presentation/session_controller.dart b/lib/features/session/presentation/session_controller.dart index 0b0e2f564..31e9fc23b 100644 --- a/lib/features/session/presentation/session_controller.dart +++ b/lib/features/session/presentation/session_controller.dart @@ -77,14 +77,14 @@ class SessionController extends GetxController { _cachingManager.clearAll() ]); _authorizationInterceptors.clear(); - pushAndPopAll(AppRoutes.LOGIN); + pushAndPopAll(AppRoutes.login); } void _goToMailboxDashBoard(GetSessionSuccess success) { final apiUrl = success.session.apiUrl.toString(); if (apiUrl.isNotEmpty) { _dynamicUrlInterceptors.changeBaseUrl(apiUrl); - pushAndPop(AppRoutes.MAILBOX_DASHBOARD, arguments: success.session); + pushAndPop(AppRoutes.dashboard, arguments: success.session); } else { _goToLogin(); } diff --git a/lib/features/thread/presentation/mixin/email_action_controller.dart b/lib/features/thread/presentation/mixin/email_action_controller.dart index 1c52ca679..e2b162a55 100644 --- a/lib/features/thread/presentation/mixin/email_action_controller.dart +++ b/lib/features/thread/presentation/mixin/email_action_controller.dart @@ -20,6 +20,7 @@ import 'package:tmail_ui_user/features/email/domain/model/move_to_mailbox_reques import 'package:tmail_ui_user/features/email/presentation/model/composer_arguments.dart'; import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_actions.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/thread/presentation/model/delete_action_type.dart'; import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; import 'package:tmail_ui_user/main/routes/app_routes.dart'; @@ -42,7 +43,7 @@ mixin EmailActionController { void previewEmail(BuildContext context, PresentationEmail presentationEmail) { mailboxDashBoardController.setSelectedEmail(presentationEmail); - mailboxDashBoardController.dispatchRoute(AppRoutes.EMAIL); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.emailDetailed); } void moveToTrash(PresentationEmail email) async { @@ -107,7 +108,7 @@ mixin EmailActionController { if (currentMailbox != null && accountId != null) { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments(accountId, MailboxActions.moveEmail) ); diff --git a/lib/features/thread/presentation/thread_controller.dart b/lib/features/thread/presentation/thread_controller.dart index 92e8123db..8980718c4 100644 --- a/lib/features/thread/presentation/thread_controller.dart +++ b/lib/features/thread/presentation/thread_controller.dart @@ -39,6 +39,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/domain/state/remove_ema import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/action/dashboard_action.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/search_controller.dart'; +import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/dashboard_routes.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/quick_search_filter.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/search_email_filter.dart'; @@ -355,7 +356,7 @@ class ThreadController extends BaseController { canLoadMore = true; _isLoadingMore = false; cancelSelectEmail(); - mailboxDashBoardController.dispatchRoute(AppRoutes.THREAD); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.thread); } void _getAllEmailSuccess(GetAllEmailSuccess success) { @@ -505,7 +506,7 @@ class ThreadController extends BaseController { void previewEmail(BuildContext context, PresentationEmail presentationEmailSelected) { mailboxDashBoardController.setSelectedEmail(presentationEmailSelected); - mailboxDashBoardController.dispatchRoute(AppRoutes.EMAIL); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.emailDetailed); } void selectEmail(BuildContext context, PresentationEmail presentationEmailSelected) { @@ -640,7 +641,7 @@ class ThreadController extends BaseController { if (_accountId != null) { final listEmailIds = listEmail.map((email) => email.id).toList(); final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments(_accountId!, MailboxActions.moveEmail) ); @@ -1079,7 +1080,7 @@ class ThreadController extends BaseController { if (currentMailbox != null && accountId != null) { final destinationMailbox = await push( - AppRoutes.DESTINATION_PICKER, + AppRoutes.destinationPicker, arguments: DestinationPickerArguments(accountId, MailboxActions.moveEmail) ); @@ -1395,7 +1396,7 @@ class ThreadController extends BaseController { void goToSearchView() { SearchEmailBindings().dependencies(); - mailboxDashBoardController.dispatchRoute(AppRoutes.SEARCH_EMAIL); + mailboxDashBoardController.dispatchRoute(DashboardRoutes.searchEmail); } void calculateDragValue(PresentationEmail? currentPresentationEmail) { diff --git a/lib/main.dart b/lib/main.dart index 653b899a4..d9e101a42 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -59,7 +59,7 @@ class TMailApp extends StatelessWidget { translations: LocalizationService(), onGenerateTitle: (context) => AppLocalizations.of(context).page_name, defaultTransition: Transition.fade, - initialRoute: AppRoutes.HOME, + initialRoute: AppRoutes.home, getPages: AppPages.pages); } } \ No newline at end of file diff --git a/lib/main/pages/app_pages.dart b/lib/main/pages/app_pages.dart index 534671a67..b30ae08a9 100644 --- a/lib/main/pages/app_pages.dart +++ b/lib/main/pages/app_pages.dart @@ -5,7 +5,6 @@ import 'package:tmail_ui_user/features/composer/presentation/composer_view.dart' import 'package:tmail_ui_user/features/contact/presentation/contact_bindings.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' deferred as destination_picker; -import 'package:tmail_ui_user/features/email/presentation/email_view.dart' deferred as email; 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/identity_creator/presentation/identity_creator_bindings.dart'; @@ -33,66 +32,63 @@ import 'package:tmail_ui_user/main/routes/app_routes.dart'; class AppPages { static final pages = [ GetPage( - name: AppRoutes.HOME, + name: AppRoutes.home, page: () => const HomeView(), binding: HomeBindings()), GetPage( - name: AppRoutes.LOGIN, + name: AppRoutes.login, page: () => DeferredWidget(login.loadLibrary, () => login.LoginView()), binding: LoginBindings()), GetPage( - name: AppRoutes.SESSION, + name: AppRoutes.session, page: () => DeferredWidget(session.loadLibrary, () => session.SessionView()), binding: SessionPageBindings()), GetPage( - name: AppRoutes.MAILBOX_DASHBOARD, + name: AppRoutes.dashboard, page: () => DeferredWidget(mailbox_dashboard.loadLibrary, () => mailbox_dashboard.MailboxDashBoardView()), binding: MailboxDashBoardBindings()), GetPage( - name: AppRoutes.EMAIL, - page: () => DeferredWidget(email.loadLibrary, () => email.EmailView())), - GetPage( - name: AppRoutes.COMPOSER, + name: AppRoutes.composer, opaque: false, page: () { ComposerBindings().dependencies(); return DeferredWidget(composer.loadLibrary, () => composer.ComposerView()); }), GetPage( - name: AppRoutes.DESTINATION_PICKER, + name: AppRoutes.destinationPicker, opaque: false, page: () => DeferredWidget(destination_picker.loadLibrary, () => destination_picker.DestinationPickerView()), binding: DestinationPickerBindings()), GetPage( - name: AppRoutes.MAILBOX_CREATOR, + name: AppRoutes.mailboxCreator, opaque: false, page: () => DeferredWidget(mailbox_creator.loadLibrary, () => mailbox_creator.MailboxCreatorView()), binding: MailboxCreatorBindings()), GetPage( - name: AppRoutes.MANAGE_ACCOUNT, + name: AppRoutes.settings, page: () => DeferredWidget(manage_account_dashboard.loadLibrary, () => manage_account_dashboard.ManageAccountDashBoardView()), binding: ManageAccountDashBoardBindings()), GetPage( - name: AppRoutes.IDENTITY_CREATOR, + name: AppRoutes.identityCreator, opaque: false, page: () => DeferredWidget(identity_creator.loadLibrary, () => identity_creator.IdentityCreatorView()), binding: IdentityCreatorBindings()), GetPage( - name: AppRoutes.RULES_FILTER_CREATOR, + name: AppRoutes.rulesFilterCreator, opaque: false, page: () => DeferredWidget( rules_filter_creator.loadLibrary, () => rules_filter_creator.RuleFilterCreatorView()), binding: RulesFilterCreatorBindings()), GetPage( - name: AppRoutes.EMAILS_FORWARD_CREATOR, + name: AppRoutes.emailsForwardCreator, opaque: false, page: () => DeferredWidget( emails_forward_creator.loadLibrary, () => emails_forward_creator.EmailsForwardCreatorView()), binding: EmailsForwardCreatorBindings()), GetPage( - name: AppRoutes.CONTACT, + name: AppRoutes.contact, opaque: false, page: () => DeferredWidget( contact_view.loadLibrary, diff --git a/lib/main/routes/app_routes.dart b/lib/main/routes/app_routes.dart index 2b3d4d0df..88e70383f 100644 --- a/lib/main/routes/app_routes.dart +++ b/lib/main/routes/app_routes.dart @@ -1,18 +1,16 @@ abstract class AppRoutes { - static const HOME = '/'; - static const LOGIN = '/login'; - static const MAILBOX = '$MAILBOX_DASHBOARD/mailbox'; - static const MAILBOX_DASHBOARD = '/mailboxDashBoard'; - static const THREAD = '$MAILBOX_DASHBOARD/thread'; - static const EMAIL = '$THREAD/email'; - static const SESSION = '/session'; - static const COMPOSER = '/composer'; - static const DESTINATION_PICKER = '/destinationPicker'; - static const MAILBOX_CREATOR = '$MAILBOX_DASHBOARD/mailboxCreator'; - static const MANAGE_ACCOUNT = '$MAILBOX_DASHBOARD/manage_account'; - static const IDENTITY_CREATOR = '$MANAGE_ACCOUNT/identity_creator'; - static const RULES_FILTER_CREATOR = '$MANAGE_ACCOUNT/rules_filter_creator'; - static const EMAILS_FORWARD_CREATOR = '$MANAGE_ACCOUNT/emails_forward_creator'; - static const SEARCH_EMAIL = '$MAILBOX_DASHBOARD/search_email'; - static const CONTACT = '$MAILBOX_DASHBOARD/contact'; + static const home = '/'; + static const login = '/login'; + static const session = '/session'; + static const dashboard = '/dashBoard'; + static const composer = '/composer'; + static const destinationPicker = '/destination_picker'; + static const settings = '/settings'; + + static const mailboxCreator = '$dashboard/mailbox_creator'; + static const contact = '$dashboard/contact'; + + static const identityCreator = '$settings/identity_creator'; + static const rulesFilterCreator = '$settings/rules_filter_creator'; + static const emailsForwardCreator = '$settings/emails_forward_creator'; } \ No newline at end of file