mirror of
https://github.com/lollipopkit/flutter_server_box.git
synced 2025-12-17 07:14:28 +01:00
i18n support
This commit is contained in:
66
lib/generated/intl/messages_all.dart
Normal file
66
lib/generated/intl/messages_all.dart
Normal file
@@ -0,0 +1,66 @@
|
||||
// DO NOT EDIT. This is code generated via package:intl/generate_localized.dart
|
||||
// This is a library that looks up messages for specific locales by
|
||||
// delegating to the appropriate library.
|
||||
|
||||
// Ignore issues from commonly used lints in this file.
|
||||
// ignore_for_file:implementation_imports, file_names, unnecessary_new
|
||||
// ignore_for_file:unnecessary_brace_in_string_interps, directives_ordering
|
||||
// ignore_for_file:argument_type_not_assignable, invalid_assignment
|
||||
// ignore_for_file:prefer_single_quotes, prefer_generic_function_type_aliases
|
||||
// ignore_for_file:comment_references
|
||||
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:intl/message_lookup_by_library.dart';
|
||||
import 'package:intl/src/intl_helpers.dart';
|
||||
|
||||
import 'messages_en.dart' as messages_en;
|
||||
import 'messages_zh.dart' as messages_zh;
|
||||
|
||||
typedef Future<dynamic> LibraryLoader();
|
||||
Map<String, LibraryLoader> _deferredLibraries = {
|
||||
'en': () => new Future.value(null),
|
||||
'zh': () => new Future.value(null),
|
||||
};
|
||||
|
||||
MessageLookupByLibrary? _findExact(String localeName) {
|
||||
switch (localeName) {
|
||||
case 'en':
|
||||
return messages_en.messages;
|
||||
case 'zh':
|
||||
return messages_zh.messages;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/// User programs should call this before using [localeName] for messages.
|
||||
Future<bool> initializeMessages(String localeName) async {
|
||||
var availableLocale = Intl.verifiedLocale(
|
||||
localeName, (locale) => _deferredLibraries[locale] != null,
|
||||
onFailure: (_) => null);
|
||||
if (availableLocale == null) {
|
||||
return new Future.value(false);
|
||||
}
|
||||
var lib = _deferredLibraries[availableLocale];
|
||||
await (lib == null ? new Future.value(false) : lib());
|
||||
initializeInternalMessageLookup(() => new CompositeMessageLookup());
|
||||
messageLookup.addLocale(availableLocale, _findGeneratedMessagesFor);
|
||||
return new Future.value(true);
|
||||
}
|
||||
|
||||
bool _messagesExistFor(String locale) {
|
||||
try {
|
||||
return _findExact(locale) != null;
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
MessageLookupByLibrary? _findGeneratedMessagesFor(String locale) {
|
||||
var actualLocale =
|
||||
Intl.verifiedLocale(locale, _messagesExistFor, onFailure: (_) => null);
|
||||
if (actualLocale == null) return null;
|
||||
return _findExact(actualLocale);
|
||||
}
|
||||
140
lib/generated/intl/messages_en.dart
Normal file
140
lib/generated/intl/messages_en.dart
Normal file
@@ -0,0 +1,140 @@
|
||||
// DO NOT EDIT. This is code generated via package:intl/generate_localized.dart
|
||||
// This is a library that provides messages for a en locale. All the
|
||||
// messages from the main program should be duplicated here with the same
|
||||
// function name.
|
||||
|
||||
// Ignore issues from commonly used lints in this file.
|
||||
// ignore_for_file:unnecessary_brace_in_string_interps, unnecessary_new
|
||||
// ignore_for_file:prefer_single_quotes,comment_references, directives_ordering
|
||||
// ignore_for_file:annotate_overrides,prefer_generic_function_type_aliases
|
||||
// ignore_for_file:unused_import, file_names, avoid_escaping_inner_quotes
|
||||
// ignore_for_file:unnecessary_string_interpolations, unnecessary_string_escapes
|
||||
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:intl/message_lookup_by_library.dart';
|
||||
|
||||
final messages = new MessageLookup();
|
||||
|
||||
typedef String MessageIfAbsent(String messageStr, List<dynamic> args);
|
||||
|
||||
class MessageLookup extends MessageLookupByLibrary {
|
||||
String get localeName => 'en';
|
||||
|
||||
static String m0(rainSunMeGithub) =>
|
||||
"\nThanks ${rainSunMeGithub} for participating in the test.\n\nAll rights reserved.";
|
||||
|
||||
static String m1(code) => "request failed, status code: ${code}";
|
||||
|
||||
static String m2(myGithub) => "\nMade with ❤️ by ${myGithub}";
|
||||
|
||||
static String m3(server) => "Are you sure to delete server [${server}]?";
|
||||
|
||||
static String m4(build) => "Found: v1.0.${build}, click to update";
|
||||
|
||||
static String m5(build) => "Current: v1.0.${build}";
|
||||
|
||||
static String m6(build) => "Current: v1.0.${build}, is up to date";
|
||||
|
||||
final messages = _notInlinedMessages(_notInlinedMessages);
|
||||
static Map<String, Function> _notInlinedMessages(_) => <String, Function>{
|
||||
"aboutThanks": m0,
|
||||
"addAServer": MessageLookupByLibrary.simpleMessage("add a server"),
|
||||
"addPrivateKey":
|
||||
MessageLookupByLibrary.simpleMessage("Add private key"),
|
||||
"appPrimaryColor":
|
||||
MessageLookupByLibrary.simpleMessage("App primary color"),
|
||||
"attention": MessageLookupByLibrary.simpleMessage("Attention"),
|
||||
"cancel": MessageLookupByLibrary.simpleMessage("Cancel"),
|
||||
"choose": MessageLookupByLibrary.simpleMessage("Choose"),
|
||||
"chooseDestination":
|
||||
MessageLookupByLibrary.simpleMessage("Choose destination"),
|
||||
"choosePrivateKey":
|
||||
MessageLookupByLibrary.simpleMessage("Choose private key"),
|
||||
"clear": MessageLookupByLibrary.simpleMessage("Clear"),
|
||||
"close": MessageLookupByLibrary.simpleMessage("Close"),
|
||||
"convert": MessageLookupByLibrary.simpleMessage("Convert"),
|
||||
"copy": MessageLookupByLibrary.simpleMessage("Copy"),
|
||||
"currentMode": MessageLookupByLibrary.simpleMessage("Current Mode"),
|
||||
"debug": MessageLookupByLibrary.simpleMessage("Debug"),
|
||||
"decode": MessageLookupByLibrary.simpleMessage("Decode"),
|
||||
"delete": MessageLookupByLibrary.simpleMessage("Delete"),
|
||||
"edit": MessageLookupByLibrary.simpleMessage("Edit"),
|
||||
"encode": MessageLookupByLibrary.simpleMessage("Encode"),
|
||||
"exampleName": MessageLookupByLibrary.simpleMessage("Example name"),
|
||||
"export": MessageLookupByLibrary.simpleMessage("Export"),
|
||||
"fieldMustNotEmpty": MessageLookupByLibrary.simpleMessage(
|
||||
"These fields must not be empty."),
|
||||
"go": MessageLookupByLibrary.simpleMessage("Go"),
|
||||
"host": MessageLookupByLibrary.simpleMessage("Host"),
|
||||
"httpFailedWithCode": m1,
|
||||
"import": MessageLookupByLibrary.simpleMessage("Import"),
|
||||
"importAndExport":
|
||||
MessageLookupByLibrary.simpleMessage("Import and Export"),
|
||||
"keyAuth": MessageLookupByLibrary.simpleMessage("Key Auth"),
|
||||
"launchPage": MessageLookupByLibrary.simpleMessage("Launch page"),
|
||||
"license": MessageLookupByLibrary.simpleMessage("License"),
|
||||
"loss": MessageLookupByLibrary.simpleMessage("Loss"),
|
||||
"madeWithLove": m2,
|
||||
"max": MessageLookupByLibrary.simpleMessage("max"),
|
||||
"min": MessageLookupByLibrary.simpleMessage("min"),
|
||||
"ms": MessageLookupByLibrary.simpleMessage("ms"),
|
||||
"name": MessageLookupByLibrary.simpleMessage("Name"),
|
||||
"noResult": MessageLookupByLibrary.simpleMessage("No result"),
|
||||
"noSavedPrivateKey":
|
||||
MessageLookupByLibrary.simpleMessage("No saved private keys."),
|
||||
"noSavedSnippet":
|
||||
MessageLookupByLibrary.simpleMessage("No saved snippets."),
|
||||
"noServerAvailable":
|
||||
MessageLookupByLibrary.simpleMessage("No server available."),
|
||||
"ok": MessageLookupByLibrary.simpleMessage("OK"),
|
||||
"ping": MessageLookupByLibrary.simpleMessage("Ping"),
|
||||
"pingAvg": MessageLookupByLibrary.simpleMessage("Avg:"),
|
||||
"pingInputIP": MessageLookupByLibrary.simpleMessage(
|
||||
"Please input a target IP/domain."),
|
||||
"plzEnterHost":
|
||||
MessageLookupByLibrary.simpleMessage("Please enter host."),
|
||||
"plzEnterPwd":
|
||||
MessageLookupByLibrary.simpleMessage("Please enter password."),
|
||||
"plzSelectKey":
|
||||
MessageLookupByLibrary.simpleMessage("Please select a key."),
|
||||
"port": MessageLookupByLibrary.simpleMessage("Port"),
|
||||
"privateKey": MessageLookupByLibrary.simpleMessage("Private Key"),
|
||||
"pwd": MessageLookupByLibrary.simpleMessage("Password"),
|
||||
"result": MessageLookupByLibrary.simpleMessage("Result"),
|
||||
"run": MessageLookupByLibrary.simpleMessage("Run"),
|
||||
"save": MessageLookupByLibrary.simpleMessage("Save"),
|
||||
"second": MessageLookupByLibrary.simpleMessage("s"),
|
||||
"server": MessageLookupByLibrary.simpleMessage("Server"),
|
||||
"serverTabConnecting":
|
||||
MessageLookupByLibrary.simpleMessage("Connecting..."),
|
||||
"serverTabEmpty": MessageLookupByLibrary.simpleMessage(
|
||||
"There is no server.\nClick the fab to add one."),
|
||||
"serverTabFailed": MessageLookupByLibrary.simpleMessage("Failed"),
|
||||
"serverTabLoading": MessageLookupByLibrary.simpleMessage("Loading..."),
|
||||
"serverTabPlzSave": MessageLookupByLibrary.simpleMessage(
|
||||
"Please \'save\' this private key again."),
|
||||
"serverTabUnkown":
|
||||
MessageLookupByLibrary.simpleMessage("Unknown state"),
|
||||
"setting": MessageLookupByLibrary.simpleMessage("Setting"),
|
||||
"snippet": MessageLookupByLibrary.simpleMessage("Snippet"),
|
||||
"start": MessageLookupByLibrary.simpleMessage("Start"),
|
||||
"stop": MessageLookupByLibrary.simpleMessage("Stop"),
|
||||
"sureToDeleteServer": m3,
|
||||
"ttl": MessageLookupByLibrary.simpleMessage("TTL"),
|
||||
"unknown": MessageLookupByLibrary.simpleMessage("unknown"),
|
||||
"unkownConvertMode":
|
||||
MessageLookupByLibrary.simpleMessage("Unknown convert mode"),
|
||||
"updateIntervalEqual0": MessageLookupByLibrary.simpleMessage(
|
||||
"You set to 0, will not update automatically.\nYou can pull to refresh manually."),
|
||||
"updateServerStatusInterval": MessageLookupByLibrary.simpleMessage(
|
||||
"Server status update interval"),
|
||||
"upsideDown": MessageLookupByLibrary.simpleMessage("Upside Down"),
|
||||
"urlOrJson": MessageLookupByLibrary.simpleMessage("URL or JSON"),
|
||||
"user": MessageLookupByLibrary.simpleMessage("User"),
|
||||
"versionHaveUpdate": m4,
|
||||
"versionUnknownUpdate": m5,
|
||||
"versionUpdated": m6,
|
||||
"willTakEeffectImmediately":
|
||||
MessageLookupByLibrary.simpleMessage("Will take effect immediately")
|
||||
};
|
||||
}
|
||||
123
lib/generated/intl/messages_zh.dart
Normal file
123
lib/generated/intl/messages_zh.dart
Normal file
@@ -0,0 +1,123 @@
|
||||
// DO NOT EDIT. This is code generated via package:intl/generate_localized.dart
|
||||
// This is a library that provides messages for a zh locale. All the
|
||||
// messages from the main program should be duplicated here with the same
|
||||
// function name.
|
||||
|
||||
// Ignore issues from commonly used lints in this file.
|
||||
// ignore_for_file:unnecessary_brace_in_string_interps, unnecessary_new
|
||||
// ignore_for_file:prefer_single_quotes,comment_references, directives_ordering
|
||||
// ignore_for_file:annotate_overrides,prefer_generic_function_type_aliases
|
||||
// ignore_for_file:unused_import, file_names, avoid_escaping_inner_quotes
|
||||
// ignore_for_file:unnecessary_string_interpolations, unnecessary_string_escapes
|
||||
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:intl/message_lookup_by_library.dart';
|
||||
|
||||
final messages = new MessageLookup();
|
||||
|
||||
typedef String MessageIfAbsent(String messageStr, List<dynamic> args);
|
||||
|
||||
class MessageLookup extends MessageLookupByLibrary {
|
||||
String get localeName => 'zh';
|
||||
|
||||
static String m0(rainSunMeGithub) =>
|
||||
"\n感谢 ${rainSunMeGithub} 参与软件测试。\n\n保留所有权利。";
|
||||
|
||||
static String m1(code) => "请求失败, 状态码: ${code}";
|
||||
|
||||
static String m2(myGithub) => "\n用❤️制作 by ${myGithub}";
|
||||
|
||||
static String m3(server) => "你确定要删除服务器 [${server}] 吗?";
|
||||
|
||||
static String m4(build) => "找到新版本:v1.0.${build}, 点击更新";
|
||||
|
||||
static String m5(build) => "当前:v1.0.${build}";
|
||||
|
||||
static String m6(build) => "当前:v1.0.${build}, 已是最新版本";
|
||||
|
||||
final messages = _notInlinedMessages(_notInlinedMessages);
|
||||
static Map<String, Function> _notInlinedMessages(_) => <String, Function>{
|
||||
"aboutThanks": m0,
|
||||
"addAServer": MessageLookupByLibrary.simpleMessage("添加服务器"),
|
||||
"addPrivateKey": MessageLookupByLibrary.simpleMessage("添加一个私钥"),
|
||||
"appPrimaryColor": MessageLookupByLibrary.simpleMessage("App主要色"),
|
||||
"attention": MessageLookupByLibrary.simpleMessage("注意"),
|
||||
"cancel": MessageLookupByLibrary.simpleMessage("取消"),
|
||||
"choose": MessageLookupByLibrary.simpleMessage("选择"),
|
||||
"chooseDestination": MessageLookupByLibrary.simpleMessage("选择目标"),
|
||||
"choosePrivateKey": MessageLookupByLibrary.simpleMessage("选择私钥"),
|
||||
"clear": MessageLookupByLibrary.simpleMessage("清除"),
|
||||
"close": MessageLookupByLibrary.simpleMessage("关闭"),
|
||||
"convert": MessageLookupByLibrary.simpleMessage("转换"),
|
||||
"copy": MessageLookupByLibrary.simpleMessage("复制到剪切板"),
|
||||
"currentMode": MessageLookupByLibrary.simpleMessage("当前模式"),
|
||||
"debug": MessageLookupByLibrary.simpleMessage("调试"),
|
||||
"decode": MessageLookupByLibrary.simpleMessage("解码"),
|
||||
"delete": MessageLookupByLibrary.simpleMessage("删除"),
|
||||
"edit": MessageLookupByLibrary.simpleMessage("编辑"),
|
||||
"encode": MessageLookupByLibrary.simpleMessage("编码"),
|
||||
"exampleName": MessageLookupByLibrary.simpleMessage("名称示例"),
|
||||
"export": MessageLookupByLibrary.simpleMessage("导出"),
|
||||
"fieldMustNotEmpty": MessageLookupByLibrary.simpleMessage("这些输入框不能为空。"),
|
||||
"go": MessageLookupByLibrary.simpleMessage("开始"),
|
||||
"host": MessageLookupByLibrary.simpleMessage("主机"),
|
||||
"httpFailedWithCode": m1,
|
||||
"import": MessageLookupByLibrary.simpleMessage("导入"),
|
||||
"importAndExport": MessageLookupByLibrary.simpleMessage("导入或导出"),
|
||||
"keyAuth": MessageLookupByLibrary.simpleMessage("公钥认证"),
|
||||
"launchPage": MessageLookupByLibrary.simpleMessage("启动页"),
|
||||
"license": MessageLookupByLibrary.simpleMessage("开源证书"),
|
||||
"loss": MessageLookupByLibrary.simpleMessage("丢包率"),
|
||||
"madeWithLove": m2,
|
||||
"max": MessageLookupByLibrary.simpleMessage("最大"),
|
||||
"min": MessageLookupByLibrary.simpleMessage("最小"),
|
||||
"ms": MessageLookupByLibrary.simpleMessage("毫秒"),
|
||||
"name": MessageLookupByLibrary.simpleMessage("名称"),
|
||||
"noResult": MessageLookupByLibrary.simpleMessage("无结果"),
|
||||
"noSavedPrivateKey": MessageLookupByLibrary.simpleMessage("没有已保存的私钥。"),
|
||||
"noSavedSnippet": MessageLookupByLibrary.simpleMessage("没有已保存的代码片段。"),
|
||||
"noServerAvailable": MessageLookupByLibrary.simpleMessage("没有可用的服务器。"),
|
||||
"ok": MessageLookupByLibrary.simpleMessage("好"),
|
||||
"ping": MessageLookupByLibrary.simpleMessage("Ping"),
|
||||
"pingAvg": MessageLookupByLibrary.simpleMessage("平均:"),
|
||||
"pingInputIP": MessageLookupByLibrary.simpleMessage("请输入目标IP或域名"),
|
||||
"plzEnterHost": MessageLookupByLibrary.simpleMessage("请输入主机"),
|
||||
"plzEnterPwd": MessageLookupByLibrary.simpleMessage("请输入密码"),
|
||||
"plzSelectKey": MessageLookupByLibrary.simpleMessage("请选择私钥"),
|
||||
"port": MessageLookupByLibrary.simpleMessage("端口"),
|
||||
"privateKey": MessageLookupByLibrary.simpleMessage("私钥"),
|
||||
"pwd": MessageLookupByLibrary.simpleMessage("密码"),
|
||||
"result": MessageLookupByLibrary.simpleMessage("结果"),
|
||||
"run": MessageLookupByLibrary.simpleMessage("运行"),
|
||||
"save": MessageLookupByLibrary.simpleMessage("保存"),
|
||||
"second": MessageLookupByLibrary.simpleMessage("秒"),
|
||||
"server": MessageLookupByLibrary.simpleMessage("服务器"),
|
||||
"serverTabConnecting": MessageLookupByLibrary.simpleMessage("连接中..."),
|
||||
"serverTabEmpty":
|
||||
MessageLookupByLibrary.simpleMessage("现在没有服务器。\n点击右下方按钮来添加。"),
|
||||
"serverTabFailed": MessageLookupByLibrary.simpleMessage("失败"),
|
||||
"serverTabLoading": MessageLookupByLibrary.simpleMessage("加载中..."),
|
||||
"serverTabPlzSave": MessageLookupByLibrary.simpleMessage("请再次保存该私钥"),
|
||||
"serverTabUnkown": MessageLookupByLibrary.simpleMessage("未知状态"),
|
||||
"setting": MessageLookupByLibrary.simpleMessage("设置"),
|
||||
"snippet": MessageLookupByLibrary.simpleMessage("代码片段"),
|
||||
"start": MessageLookupByLibrary.simpleMessage("开始"),
|
||||
"stop": MessageLookupByLibrary.simpleMessage("停止"),
|
||||
"sureToDeleteServer": m3,
|
||||
"ttl": MessageLookupByLibrary.simpleMessage("缓存时间"),
|
||||
"unknown": MessageLookupByLibrary.simpleMessage("未知"),
|
||||
"unkownConvertMode": MessageLookupByLibrary.simpleMessage("未知转换模式"),
|
||||
"updateIntervalEqual0": MessageLookupByLibrary.simpleMessage(
|
||||
"你设置为0,服务器状态不会自动刷新。\n你可以手动下拉刷新。"),
|
||||
"updateServerStatusInterval":
|
||||
MessageLookupByLibrary.simpleMessage("服务器状态刷新间隔"),
|
||||
"upsideDown": MessageLookupByLibrary.simpleMessage("上下交换"),
|
||||
"urlOrJson": MessageLookupByLibrary.simpleMessage("链接或JSON"),
|
||||
"user": MessageLookupByLibrary.simpleMessage("用户"),
|
||||
"versionHaveUpdate": m4,
|
||||
"versionUnknownUpdate": m5,
|
||||
"versionUpdated": m6,
|
||||
"willTakEeffectImmediately":
|
||||
MessageLookupByLibrary.simpleMessage("更改将会立即生效")
|
||||
};
|
||||
}
|
||||
859
lib/generated/l10n.dart
Normal file
859
lib/generated/l10n.dart
Normal file
@@ -0,0 +1,859 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'intl/messages_all.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// Generator: Flutter Intl IDE plugin
|
||||
// Made by Localizely
|
||||
// **************************************************************************
|
||||
|
||||
// ignore_for_file: non_constant_identifier_names, lines_longer_than_80_chars
|
||||
// ignore_for_file: join_return_with_assignment, prefer_final_in_for_each
|
||||
// ignore_for_file: avoid_redundant_argument_values, avoid_escaping_inner_quotes
|
||||
|
||||
class S {
|
||||
S();
|
||||
|
||||
static S? _current;
|
||||
|
||||
static S get current {
|
||||
assert(_current != null,
|
||||
'No instance of S was loaded. Try to initialize the S delegate before accessing S.current.');
|
||||
return _current!;
|
||||
}
|
||||
|
||||
static const AppLocalizationDelegate delegate = AppLocalizationDelegate();
|
||||
|
||||
static Future<S> load(Locale locale) {
|
||||
final name = (locale.countryCode?.isEmpty ?? false)
|
||||
? locale.languageCode
|
||||
: locale.toString();
|
||||
final localeName = Intl.canonicalizedLocale(name);
|
||||
return initializeMessages(localeName).then((_) {
|
||||
Intl.defaultLocale = localeName;
|
||||
final instance = S();
|
||||
S._current = instance;
|
||||
|
||||
return instance;
|
||||
});
|
||||
}
|
||||
|
||||
static S of(BuildContext context) {
|
||||
final instance = S.maybeOf(context);
|
||||
assert(instance != null,
|
||||
'No instance of S present in the widget tree. Did you add S.delegate in localizationsDelegates?');
|
||||
return instance!;
|
||||
}
|
||||
|
||||
static S? maybeOf(BuildContext context) {
|
||||
return Localizations.of<S>(context, S);
|
||||
}
|
||||
|
||||
/// `Server`
|
||||
String get server {
|
||||
return Intl.message(
|
||||
'Server',
|
||||
name: 'server',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Convert`
|
||||
String get convert {
|
||||
return Intl.message(
|
||||
'Convert',
|
||||
name: 'convert',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Ping`
|
||||
String get ping {
|
||||
return Intl.message(
|
||||
'Ping',
|
||||
name: 'ping',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Debug`
|
||||
String get debug {
|
||||
return Intl.message(
|
||||
'Debug',
|
||||
name: 'debug',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `add a server`
|
||||
String get addAServer {
|
||||
return Intl.message(
|
||||
'add a server',
|
||||
name: 'addAServer',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Setting`
|
||||
String get setting {
|
||||
return Intl.message(
|
||||
'Setting',
|
||||
name: 'setting',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `License`
|
||||
String get license {
|
||||
return Intl.message(
|
||||
'License',
|
||||
name: 'license',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Snippet`
|
||||
String get snippet {
|
||||
return Intl.message(
|
||||
'Snippet',
|
||||
name: 'snippet',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Private Key`
|
||||
String get privateKey {
|
||||
return Intl.message(
|
||||
'Private Key',
|
||||
name: 'privateKey',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `\nMade with ❤️ by {myGithub}`
|
||||
String madeWithLove(Object myGithub) {
|
||||
return Intl.message(
|
||||
'\nMade with ❤️ by $myGithub',
|
||||
name: 'madeWithLove',
|
||||
desc: '',
|
||||
args: [myGithub],
|
||||
);
|
||||
}
|
||||
|
||||
/// `\nThanks {rainSunMeGithub} for participating in the test.\n\nAll rights reserved.`
|
||||
String aboutThanks(Object rainSunMeGithub) {
|
||||
return Intl.message(
|
||||
'\nThanks $rainSunMeGithub for participating in the test.\n\nAll rights reserved.',
|
||||
name: 'aboutThanks',
|
||||
desc: '',
|
||||
args: [rainSunMeGithub],
|
||||
);
|
||||
}
|
||||
|
||||
/// `There is no server.\nClick the fab to add one.`
|
||||
String get serverTabEmpty {
|
||||
return Intl.message(
|
||||
'There is no server.\nClick the fab to add one.',
|
||||
name: 'serverTabEmpty',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Loading...`
|
||||
String get serverTabLoading {
|
||||
return Intl.message(
|
||||
'Loading...',
|
||||
name: 'serverTabLoading',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Please 'save' this private key again.`
|
||||
String get serverTabPlzSave {
|
||||
return Intl.message(
|
||||
'Please \'save\' this private key again.',
|
||||
name: 'serverTabPlzSave',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Failed`
|
||||
String get serverTabFailed {
|
||||
return Intl.message(
|
||||
'Failed',
|
||||
name: 'serverTabFailed',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Unknown state`
|
||||
String get serverTabUnkown {
|
||||
return Intl.message(
|
||||
'Unknown state',
|
||||
name: 'serverTabUnkown',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Connecting...`
|
||||
String get serverTabConnecting {
|
||||
return Intl.message(
|
||||
'Connecting...',
|
||||
name: 'serverTabConnecting',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Decode`
|
||||
String get decode {
|
||||
return Intl.message(
|
||||
'Decode',
|
||||
name: 'decode',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Encode`
|
||||
String get encode {
|
||||
return Intl.message(
|
||||
'Encode',
|
||||
name: 'encode',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Current Mode`
|
||||
String get currentMode {
|
||||
return Intl.message(
|
||||
'Current Mode',
|
||||
name: 'currentMode',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Unknown convert mode`
|
||||
String get unkownConvertMode {
|
||||
return Intl.message(
|
||||
'Unknown convert mode',
|
||||
name: 'unkownConvertMode',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Copy`
|
||||
String get copy {
|
||||
return Intl.message(
|
||||
'Copy',
|
||||
name: 'copy',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Upside Down`
|
||||
String get upsideDown {
|
||||
return Intl.message(
|
||||
'Upside Down',
|
||||
name: 'upsideDown',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Avg:`
|
||||
String get pingAvg {
|
||||
return Intl.message(
|
||||
'Avg:',
|
||||
name: 'pingAvg',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `unknown`
|
||||
String get unknown {
|
||||
return Intl.message(
|
||||
'unknown',
|
||||
name: 'unknown',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `min`
|
||||
String get min {
|
||||
return Intl.message(
|
||||
'min',
|
||||
name: 'min',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `max`
|
||||
String get max {
|
||||
return Intl.message(
|
||||
'max',
|
||||
name: 'max',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `ms`
|
||||
String get ms {
|
||||
return Intl.message(
|
||||
'ms',
|
||||
name: 'ms',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `TTL`
|
||||
String get ttl {
|
||||
return Intl.message(
|
||||
'TTL',
|
||||
name: 'ttl',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Loss`
|
||||
String get loss {
|
||||
return Intl.message(
|
||||
'Loss',
|
||||
name: 'loss',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `No result`
|
||||
String get noResult {
|
||||
return Intl.message(
|
||||
'No result',
|
||||
name: 'noResult',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Please input a target IP/domain.`
|
||||
String get pingInputIP {
|
||||
return Intl.message(
|
||||
'Please input a target IP/domain.',
|
||||
name: 'pingInputIP',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Clear`
|
||||
String get clear {
|
||||
return Intl.message(
|
||||
'Clear',
|
||||
name: 'clear',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Start`
|
||||
String get start {
|
||||
return Intl.message(
|
||||
'Start',
|
||||
name: 'start',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `App primary color`
|
||||
String get appPrimaryColor {
|
||||
return Intl.message(
|
||||
'App primary color',
|
||||
name: 'appPrimaryColor',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Server status update interval`
|
||||
String get updateServerStatusInterval {
|
||||
return Intl.message(
|
||||
'Server status update interval',
|
||||
name: 'updateServerStatusInterval',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Will take effect immediately`
|
||||
String get willTakEeffectImmediately {
|
||||
return Intl.message(
|
||||
'Will take effect immediately',
|
||||
name: 'willTakEeffectImmediately',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Launch page`
|
||||
String get launchPage {
|
||||
return Intl.message(
|
||||
'Launch page',
|
||||
name: 'launchPage',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Current: v1.0.{build}, is up to date`
|
||||
String versionUpdated(Object build) {
|
||||
return Intl.message(
|
||||
'Current: v1.0.$build, is up to date',
|
||||
name: 'versionUpdated',
|
||||
desc: '',
|
||||
args: [build],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Current: v1.0.{build}`
|
||||
String versionUnknownUpdate(Object build) {
|
||||
return Intl.message(
|
||||
'Current: v1.0.$build',
|
||||
name: 'versionUnknownUpdate',
|
||||
desc: '',
|
||||
args: [build],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Found: v1.0.{build}, click to update`
|
||||
String versionHaveUpdate(Object build) {
|
||||
return Intl.message(
|
||||
'Found: v1.0.$build, click to update',
|
||||
name: 'versionHaveUpdate',
|
||||
desc: '',
|
||||
args: [build],
|
||||
);
|
||||
}
|
||||
|
||||
/// `s`
|
||||
String get second {
|
||||
return Intl.message(
|
||||
's',
|
||||
name: 'second',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `You set to 0, will not update automatically.\nYou can pull to refresh manually.`
|
||||
String get updateIntervalEqual0 {
|
||||
return Intl.message(
|
||||
'You set to 0, will not update automatically.\nYou can pull to refresh manually.',
|
||||
name: 'updateIntervalEqual0',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Edit`
|
||||
String get edit {
|
||||
return Intl.message(
|
||||
'Edit',
|
||||
name: 'edit',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `No saved private keys.`
|
||||
String get noSavedPrivateKey {
|
||||
return Intl.message(
|
||||
'No saved private keys.',
|
||||
name: 'noSavedPrivateKey',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Name`
|
||||
String get name {
|
||||
return Intl.message(
|
||||
'Name',
|
||||
name: 'name',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Password`
|
||||
String get pwd {
|
||||
return Intl.message(
|
||||
'Password',
|
||||
name: 'pwd',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Save`
|
||||
String get save {
|
||||
return Intl.message(
|
||||
'Save',
|
||||
name: 'save',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Delete`
|
||||
String get delete {
|
||||
return Intl.message(
|
||||
'Delete',
|
||||
name: 'delete',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `These fields must not be empty.`
|
||||
String get fieldMustNotEmpty {
|
||||
return Intl.message(
|
||||
'These fields must not be empty.',
|
||||
name: 'fieldMustNotEmpty',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Import and Export`
|
||||
String get importAndExport {
|
||||
return Intl.message(
|
||||
'Import and Export',
|
||||
name: 'importAndExport',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Choose`
|
||||
String get choose {
|
||||
return Intl.message(
|
||||
'Choose',
|
||||
name: 'choose',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Import`
|
||||
String get import {
|
||||
return Intl.message(
|
||||
'Import',
|
||||
name: 'import',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Export`
|
||||
String get export {
|
||||
return Intl.message(
|
||||
'Export',
|
||||
name: 'export',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `OK`
|
||||
String get ok {
|
||||
return Intl.message(
|
||||
'OK',
|
||||
name: 'ok',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Cancel`
|
||||
String get cancel {
|
||||
return Intl.message(
|
||||
'Cancel',
|
||||
name: 'cancel',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `URL or JSON`
|
||||
String get urlOrJson {
|
||||
return Intl.message(
|
||||
'URL or JSON',
|
||||
name: 'urlOrJson',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Go`
|
||||
String get go {
|
||||
return Intl.message(
|
||||
'Go',
|
||||
name: 'go',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `request failed, status code: {code}`
|
||||
String httpFailedWithCode(Object code) {
|
||||
return Intl.message(
|
||||
'request failed, status code: $code',
|
||||
name: 'httpFailedWithCode',
|
||||
desc: '',
|
||||
args: [code],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Run`
|
||||
String get run {
|
||||
return Intl.message(
|
||||
'Run',
|
||||
name: 'run',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `No saved snippets.`
|
||||
String get noSavedSnippet {
|
||||
return Intl.message(
|
||||
'No saved snippets.',
|
||||
name: 'noSavedSnippet',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Choose destination`
|
||||
String get chooseDestination {
|
||||
return Intl.message(
|
||||
'Choose destination',
|
||||
name: 'chooseDestination',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `No server available.`
|
||||
String get noServerAvailable {
|
||||
return Intl.message(
|
||||
'No server available.',
|
||||
name: 'noServerAvailable',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Result`
|
||||
String get result {
|
||||
return Intl.message(
|
||||
'Result',
|
||||
name: 'result',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Close`
|
||||
String get close {
|
||||
return Intl.message(
|
||||
'Close',
|
||||
name: 'close',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Attention`
|
||||
String get attention {
|
||||
return Intl.message(
|
||||
'Attention',
|
||||
name: 'attention',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Are you sure to delete server [{server}]?`
|
||||
String sureToDeleteServer(Object server) {
|
||||
return Intl.message(
|
||||
'Are you sure to delete server [$server]?',
|
||||
name: 'sureToDeleteServer',
|
||||
desc: '',
|
||||
args: [server],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Host`
|
||||
String get host {
|
||||
return Intl.message(
|
||||
'Host',
|
||||
name: 'host',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Port`
|
||||
String get port {
|
||||
return Intl.message(
|
||||
'Port',
|
||||
name: 'port',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `User`
|
||||
String get user {
|
||||
return Intl.message(
|
||||
'User',
|
||||
name: 'user',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Key Auth`
|
||||
String get keyAuth {
|
||||
return Intl.message(
|
||||
'Key Auth',
|
||||
name: 'keyAuth',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Add private key`
|
||||
String get addPrivateKey {
|
||||
return Intl.message(
|
||||
'Add private key',
|
||||
name: 'addPrivateKey',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Choose private key`
|
||||
String get choosePrivateKey {
|
||||
return Intl.message(
|
||||
'Choose private key',
|
||||
name: 'choosePrivateKey',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Please enter host.`
|
||||
String get plzEnterHost {
|
||||
return Intl.message(
|
||||
'Please enter host.',
|
||||
name: 'plzEnterHost',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Please enter password.`
|
||||
String get plzEnterPwd {
|
||||
return Intl.message(
|
||||
'Please enter password.',
|
||||
name: 'plzEnterPwd',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Please select a key.`
|
||||
String get plzSelectKey {
|
||||
return Intl.message(
|
||||
'Please select a key.',
|
||||
name: 'plzSelectKey',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Example name`
|
||||
String get exampleName {
|
||||
return Intl.message(
|
||||
'Example name',
|
||||
name: 'exampleName',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Stop`
|
||||
String get stop {
|
||||
return Intl.message(
|
||||
'Stop',
|
||||
name: 'stop',
|
||||
desc: '',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class AppLocalizationDelegate extends LocalizationsDelegate<S> {
|
||||
const AppLocalizationDelegate();
|
||||
|
||||
List<Locale> get supportedLocales {
|
||||
return const <Locale>[
|
||||
Locale.fromSubtags(languageCode: 'en'),
|
||||
Locale.fromSubtags(languageCode: 'zh'),
|
||||
];
|
||||
}
|
||||
|
||||
@override
|
||||
bool isSupported(Locale locale) => _isSupported(locale);
|
||||
@override
|
||||
Future<S> load(Locale locale) => S.load(locale);
|
||||
@override
|
||||
bool shouldReload(AppLocalizationDelegate old) => false;
|
||||
|
||||
bool _isSupported(Locale locale) {
|
||||
for (var supportedLocale in supportedLocales) {
|
||||
if (supportedLocale.languageCode == locale.languageCode) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user