TF-2040 Add LanguageCodeConstants to manage language supported
(cherry picked from commit de57a6a8a43c18e1deed057d6a0e12c06c2bb1fe)
This commit is contained in:
@@ -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));
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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';
|
||||
}
|
||||
@@ -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<Locale> 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();
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user