You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
140 lines
6.2 KiB
140 lines
6.2 KiB
import 'dart:ui';
|
|
|
|
import 'package:get/get.dart';
|
|
import 'package:get_storage/get_storage.dart';
|
|
|
|
import 'language/en_us.dart'; // 英语
|
|
import 'language/zh_cn.dart'; // 简体中文
|
|
import 'language/es_es.dart'; // 西班牙语
|
|
import 'language/zh_hk.dart'; // 繁体中文
|
|
import 'language/pt_pt.dart'; // 添加葡萄牙语导入
|
|
import 'language/ja_jp.dart'; // 添加日语导入
|
|
import 'language/ko_kr.dart'; // 添加韩语导入
|
|
import 'language/fr_fr.dart'; // 添加法语导入
|
|
import 'language/de_de.dart'; // 添加德语导入
|
|
import 'language/ru_ru.dart'; // 添加俄语导入
|
|
import 'language/vi_vn.dart'; // 添加越南语导入
|
|
import 'language/it_it.dart'; // 添加意大利语导入
|
|
import 'language/hi_in.dart'; // 添加印度语导入
|
|
import 'language/id_id.dart'; // 添加印尼语导入
|
|
import 'language/th_Th.dart'; // 添加泰语导入
|
|
import 'language/ms_MY.dart'; // 添加马来语导入
|
|
import 'language/tr_TR.dart'; // 添加土耳其语导入
|
|
import 'language/pl_PL.dart'; // 添加波兰语导入
|
|
import 'language/tl_ph.dart'; // 新增菲律宾语导入
|
|
import 'language/da_dk.dart'; // 新增丹麦语导入
|
|
import 'language/nl_nl.dart'; // 新增荷兰语导入
|
|
import 'language/sv_se.dart'; // 新增瑞典语导入
|
|
import 'language/fi_fi.dart'; // 新增芬兰语导入
|
|
import 'language/cs_cz.dart'; // 新增捷克语导入
|
|
import 'language/hu_hu.dart'; // 新增匈牙利语导入
|
|
import 'language/nb_no.dart'; // 新增挪威语导入
|
|
import 'language/ro_ro.dart'; // 新增罗马尼亚语导入
|
|
import 'language/uk_ua.dart'; // 新增乌克兰语导入
|
|
import 'language/el_gr.dart'; // 新增希腊语导入
|
|
import 'language/bg_bg.dart'; // 新增保加利亚语导入
|
|
import 'language/hr_hr.dart'; // 新增克罗地亚语导入
|
|
import 'language/sk_sk.dart'; // 新增斯洛伐克语导入
|
|
import 'language/sl_si.dart'; // 新增斯洛文尼亚语导入
|
|
import 'language/lt_lt.dart'; // 新增立陶宛语导入
|
|
import 'language/lv_lv.dart'; // 新增拉脱维亚语导入
|
|
import 'language/et_ee.dart'; // 新增爱沙尼亚语导入
|
|
import 'language/is_is.dart'; // 新增塞尔维亚语(拉丁)导入
|
|
import 'language/sr_rs.dart'; // 新增冰岛语导入
|
|
|
|
class AppTranslations extends Translations {
|
|
static const fallbackLocale = Locale('zh', 'CN');
|
|
static final supportedLocales = [
|
|
const Locale('zh', 'CN'), // 简体中文
|
|
const Locale('zh', 'HK'), // 添加繁体中文支持
|
|
const Locale('en', 'US'), // 英语
|
|
const Locale('es', 'ES'), // 添加西班牙语
|
|
const Locale('pt', 'PT'), // 添加葡萄牙语支持
|
|
const Locale('ja', 'JP'), // 添加日语支持
|
|
const Locale('ko', 'KR'), // 添加韩语支持
|
|
const Locale('fr', 'FR'), // 添加法语支持
|
|
const Locale('de', 'DE'), // 添加德语支持
|
|
const Locale('ru', 'RU'), // 添加俄语支持
|
|
const Locale('vi', 'VN'), // 添加越南语支持
|
|
const Locale('it', 'IT'), // 添加意大利语支持
|
|
const Locale('hi', 'IN'), // 添加印度语支持
|
|
const Locale('id', 'ID'), // 添加印尼语支持
|
|
const Locale('th', 'TH'), // 添加泰语支持
|
|
const Locale('ms', 'MY'), // 添加马来语支持
|
|
const Locale('tr', 'TR'), // 添加土耳其语支持
|
|
const Locale('pl', 'PL'), // 添加波兰语支持
|
|
const Locale('tl', 'PH'), // 添加菲律宾语支持
|
|
const Locale('nl', 'NL'), // 荷兰语
|
|
const Locale('sv', 'SE'), // 瑞典语
|
|
const Locale('da', 'DK'), // 丹麦语
|
|
const Locale('fi', 'FI'), // 芬兰语
|
|
const Locale('cs', 'CZ'), // 捷克语
|
|
const Locale('hu', 'HU'), // 匈牙利语
|
|
const Locale('nb', 'NO'), // 挪威语
|
|
const Locale('ro', 'RO'), // 罗马尼亚语
|
|
const Locale('uk', 'UA'), // 乌克兰语
|
|
const Locale('el', 'GR'), // 希腊语
|
|
const Locale('bg', 'BG'), // 保加利亚语
|
|
const Locale('hr', 'HR'), // 克罗地亚语
|
|
const Locale('sk', 'SK'), // 斯洛伐克语
|
|
const Locale('sl', 'SI'), // 斯洛文尼亚语
|
|
const Locale('lt', 'LT'), // 立陶宛语
|
|
const Locale('lv', 'LV'), // 拉脱维亚语
|
|
const Locale('et', 'EE'), // 爱沙尼亚语
|
|
const Locale('sr', 'RS'), // 塞尔维亚语
|
|
const Locale('is', 'IS'), // 新增冰岛语支持
|
|
];
|
|
|
|
static Locale? deviceLocale() {
|
|
final GetStorage storage = GetStorage();
|
|
Locale? locale = Get.deviceLocale;
|
|
String? language = storage.read('language');
|
|
if (language != null && language != 'system') {
|
|
List languageList = language.split('_');
|
|
locale = Locale(languageList[0], languageList[1]);
|
|
}
|
|
return locale;
|
|
}
|
|
|
|
@override
|
|
Map<String, Map<String, String>> get keys => {
|
|
'en_US': enUS,
|
|
'zh_CN': zhCN,
|
|
'zh_HK': zhHK, // 添加繁体中文映射
|
|
'es_ES': esES, // 添加西班牙语翻译映射
|
|
'pt_PT': ptPT, // 添加葡萄牙语映射
|
|
'ja_JP': jaJP, // 添加日语映射
|
|
'ko_KR': koKR, // 添加韩语映射
|
|
'fr_FR': frFR, // 添加法语映射
|
|
'de_DE': deDE, // 添加德语映射
|
|
'ru_RU': ruRU, // 添加俄语映射
|
|
'vi_VN': viVN, // 添加越南语映射
|
|
'it_IT': itIT, // 添加意大利语映射
|
|
'hi_IN': hiIN, // 添加印度语映射
|
|
'id_ID': idID, // 添加印尼语映射
|
|
'th_TH': thTH, // 添加泰语映射
|
|
'ms_MY': msMY, // 添加马来语映射
|
|
'tr_TR': trTR, // 添加土耳其语映射
|
|
'pl_PL': plPL, // 添加波兰语映射
|
|
'tl_PH': tlPH, // 添加菲律宾语映射
|
|
'nl_NL': nlNL, // 荷兰语
|
|
'sv_SE': svSE, // 瑞典语
|
|
'da_DK': daDK, // 丹麦语
|
|
'fi_FI': fiFI, // 芬兰语
|
|
'cs_CZ': csCZ, // 捷克语
|
|
'hu_HU': huHU, // 匈牙利语
|
|
'nb_NO': nbNO, // 挪威语
|
|
'ro_RO': roRO, // 罗马尼亚语
|
|
'uk_UA': ukUA, // 乌克兰语
|
|
'el_GR': elGR, // 希腊语
|
|
'bg_BG': bgBG, // 保加利亚语
|
|
'hr_HR': hrHR, // 克罗地亚语
|
|
'sk_SK': skSK, // 斯洛伐克语
|
|
'sl_SI': slSI, // 斯洛文尼亚语
|
|
'lt_LT': ltLT, // 立陶宛语
|
|
'lv_LV': lvLV, // 拉脱维亚语
|
|
'et_EE': etEE, // 爱沙尼亚语
|
|
'sr_RS': srRS, // 新增塞尔维亚语(拉丁)映射
|
|
'is_IS': isIS, // 新增冰岛语映射
|
|
};
|
|
}
|
|
|