79 lines
1.7 KiB
Dart
Executable File
79 lines
1.7 KiB
Dart
Executable File
|
|
import 'dart:convert';
|
|
import 'dart:ui';
|
|
import 'package:flutter/services.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:star_lock/translations/trans_lib.dart';
|
|
|
|
import '../tools/app_manager.dart';
|
|
|
|
enum AppDept {
|
|
cdl,
|
|
}
|
|
|
|
extension ExtensionAppDept on AppDept {
|
|
|
|
static AppDept fromAppPackageName(String packageName) {
|
|
AppDept dept = AppDept.cdl;
|
|
packageName = packageName.toLowerCase();
|
|
if(packageName.contains('cdl')){
|
|
dept = AppDept.cdl;
|
|
}
|
|
return dept;
|
|
}
|
|
|
|
List<Locale> get deptSupportedLocales {
|
|
Locale enL = const Locale('en', 'US');
|
|
Locale zhL = const Locale('zh', 'CN');
|
|
|
|
return [enL,zhL];
|
|
}
|
|
|
|
}
|
|
|
|
AppDept appDept = ExtensionAppDept.fromAppPackageName(AppManager().packageName);
|
|
|
|
final List<Locale> appSupportedLocales = appDept.deptSupportedLocales;
|
|
|
|
enum LanguageType {
|
|
chinese,
|
|
english,
|
|
deutsch, // 德语
|
|
francais, // 法语
|
|
italiano, // 意大利
|
|
dutch, // 荷兰语
|
|
spanish, // 西班牙
|
|
czech, // 捷克语
|
|
slovak // 斯洛伐克语
|
|
}
|
|
|
|
extension ExtensionLanguageType on LanguageType {
|
|
String get lanTitle {
|
|
var str = '';
|
|
switch(this){
|
|
case LanguageType.english:
|
|
str = TranslationLoader.lanKeys!.lanEnglish!.tr;
|
|
break;
|
|
case LanguageType.chinese:
|
|
str = TranslationLoader.lanKeys!.lanChinese!.tr;
|
|
break;
|
|
|
|
}
|
|
return str;
|
|
}
|
|
|
|
static LanguageType fromLanguageCode(String code) {
|
|
LanguageType languageType = LanguageType.english;
|
|
switch(code.toLowerCase()){
|
|
case 'en':
|
|
languageType = LanguageType.english;
|
|
break;
|
|
case 'zh':
|
|
languageType = LanguageType.chinese;
|
|
break;
|
|
|
|
}
|
|
return languageType;
|
|
}
|
|
|
|
} |