mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2025-08-09 17:32:12 +00:00
61 lines
1.3 KiB
Dart
61 lines
1.3 KiB
Dart
import 'package:flutter/material.dart';
|
|
|
|
enum AppLanguage {
|
|
english,
|
|
chinese,
|
|
italian,
|
|
french,
|
|
}
|
|
|
|
String stringFromLanguage(AppLanguage language) {
|
|
switch (language) {
|
|
case AppLanguage.english:
|
|
return "en";
|
|
case AppLanguage.chinese:
|
|
return "ch";
|
|
case AppLanguage.italian:
|
|
return "it";
|
|
case AppLanguage.french:
|
|
return "fr";
|
|
}
|
|
}
|
|
|
|
AppLanguage languageFromString(String name) {
|
|
AppLanguage language = AppLanguage.english;
|
|
if (name == "ch") {
|
|
language = AppLanguage.chinese;
|
|
} else if (name == "it") {
|
|
language = AppLanguage.italian;
|
|
} else if (name == "fr") {
|
|
language = AppLanguage.french;
|
|
}
|
|
|
|
return language;
|
|
}
|
|
|
|
Locale localeFromLanguageName(AppLanguage language) {
|
|
switch (language) {
|
|
case AppLanguage.english:
|
|
return const Locale('en');
|
|
case AppLanguage.chinese:
|
|
return const Locale('zh', 'CN');
|
|
case AppLanguage.italian:
|
|
return const Locale('it', 'IT');
|
|
case AppLanguage.french:
|
|
return const Locale('fr', 'CA');
|
|
}
|
|
}
|
|
|
|
AppLanguage languageFromLocale(Locale locale) {
|
|
switch (locale.languageCode) {
|
|
case "zh":
|
|
return AppLanguage.chinese;
|
|
case "it":
|
|
return AppLanguage.italian;
|
|
case "fr":
|
|
return AppLanguage.french;
|
|
default:
|
|
return AppLanguage.english;
|
|
}
|
|
}
|