diff --git a/lib/features/base/reloadable/reloadable_controller.dart b/lib/features/base/reloadable/reloadable_controller.dart index 35684e353..e72d65fd7 100644 --- a/lib/features/base/reloadable/reloadable_controller.dart +++ b/lib/features/base/reloadable/reloadable_controller.dart @@ -140,7 +140,7 @@ abstract class ReloadableController extends BaseController { } void updateAuthenticationAccount(Session session, AccountId accountId, UserName userName) { - final apiUrl = session.getQualifiedApiUrl(baseUrl: _dynamicUrlInterceptors.jmapUrl);; + final apiUrl = session.getQualifiedApiUrl(baseUrl: _dynamicUrlInterceptors.jmapUrl); log('ReloadableController::updateAuthenticationAccount():apiUrl: $apiUrl'); if (apiUrl.isNotEmpty) { consumeState(_updateAuthenticationAccountInteractor.execute(accountId, apiUrl, userName)); diff --git a/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart b/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart index 569bc1939..e1af34905 100644 --- a/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart +++ b/lib/features/mailbox_dashboard/presentation/mailbox_dashboard_view.dart @@ -61,7 +61,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { children: [ SizedBox( width: ResponsiveUtils.defaultSizeLeftMenuMobile, - child: _buildScaffoldHaveDrawer(body: SendingQueueView())), + child: _buildScaffoldHaveDrawer(body: const SendingQueueView())), Expanded(child: EmailView()), ], ); @@ -70,7 +70,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView { desktop: bodyView, tabletLarge: bodyView, landscapeTablet: bodyView, - mobile: _buildScaffoldHaveDrawer(body: SendingQueueView())); + mobile: _buildScaffoldHaveDrawer(body: const SendingQueueView())); case DashboardRoutes.waiting: return const Center( child: SizedBox( diff --git a/lib/main/localizations/language_code_constants.dart b/lib/main/localizations/language_code_constants.dart new file mode 100644 index 000000000..7b84b16be --- /dev/null +++ b/lib/main/localizations/language_code_constants.dart @@ -0,0 +1,9 @@ + +class LanguageCodeConstants { + static const String english = 'en'; + static const String french = 'fr'; + static const String vietnamese = 'vi'; + static const String italian = 'it'; + static const String russian = 'ru'; + static const String arabic = 'ar'; +} diff --git a/lib/main/localizations/localization_service.dart b/lib/main/localizations/localization_service.dart index 18f1e48c8..9d17d32bf 100644 --- a/lib/main/localizations/localization_service.dart +++ b/lib/main/localizations/localization_service.dart @@ -4,28 +4,29 @@ import 'dart:ui'; import 'package:core/utils/app_logger.dart'; import 'package:get/get.dart'; import 'package:tmail_ui_user/features/manage_account/data/local/language_cache_manager.dart'; +import 'package:tmail_ui_user/main/localizations/language_code_constants.dart'; class LocalizationService extends Translations { - static const defaultLocale = Locale('en', 'US'); - static const fallbackLocale = Locale('en', 'US'); + static const defaultLocale = Locale(LanguageCodeConstants.english, 'US'); + static const fallbackLocale = Locale(LanguageCodeConstants.english, 'US'); static final supportedLanguageCodes = [ - 'fr', - 'en', - 'vi', - 'ru', - 'ar', - 'it' + LanguageCodeConstants.french, + LanguageCodeConstants.english, + LanguageCodeConstants.vietnamese, + LanguageCodeConstants.russian, + LanguageCodeConstants.arabic, + LanguageCodeConstants.italian ]; static const List supportedLocales = [ - Locale('fr', 'FR'), - Locale('en', 'US'), - Locale('vi', 'VN'), - Locale('ru', 'RU'), - Locale('ar', 'TN'), - Locale('it', 'IT') + Locale(LanguageCodeConstants.french, 'FR'), + Locale(LanguageCodeConstants.english, 'US'), + Locale(LanguageCodeConstants.vietnamese, 'VN'), + Locale(LanguageCodeConstants.russian, 'RU'), + Locale(LanguageCodeConstants.arabic, 'TN'), + Locale(LanguageCodeConstants.italian, 'IT') ]; static final locale = _getLocaleFromLanguage(); diff --git a/lib/main/utils/app_utils.dart b/lib/main/utils/app_utils.dart index 4f62d697e..6314a1f17 100644 --- a/lib/main/utils/app_utils.dart +++ b/lib/main/utils/app_utils.dart @@ -2,10 +2,13 @@ import 'package:core/utils/platform_info.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; +import 'package:get/get.dart'; import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; +import 'package:tmail_ui_user/main/localizations/language_code_constants.dart'; import 'package:tmail_ui_user/main/utils/app_config.dart'; import 'package:url_launcher/url_launcher.dart'; import 'package:intl/intl.dart' as intl; +import 'package:date_format/date_format.dart' as date_format; class AppUtils { @@ -48,4 +51,23 @@ class AppUtils { ); }); } + + static date_format.DateLocale getCurrentDateLocale() { + final currentLanguageCode = Get.locale?.languageCode; + if (currentLanguageCode == LanguageCodeConstants.french) { + return const date_format.FrenchDateLocale(); + } else if (currentLanguageCode == LanguageCodeConstants.english) { + return const date_format.EnglishDateLocale(); + } else if (currentLanguageCode == LanguageCodeConstants.vietnamese) { + return const date_format.VietnameseDateLocale(); + } else if (currentLanguageCode == LanguageCodeConstants.russian) { + return const date_format.RussianDateLocale(); + } else if (currentLanguageCode == LanguageCodeConstants.arabic) { + return const date_format.ArabicDateLocale(); + } else if (currentLanguageCode == LanguageCodeConstants.italian) { + return const date_format.ItalianDateLocale(); + } else { + return const date_format.EnglishDateLocale(); + } + } } \ No newline at end of file