feat: Donation page

This commit is contained in:
2025-03-01 13:42:30 +08:00
parent d65eb82ece
commit 721ba6a3c2
10 changed files with 4613 additions and 3314 deletions

View File

@ -47,8 +47,10 @@ MessageLookupByLibrary? _findExact(String localeName) {
/// User programs should call this before using [localeName] for messages.
Future<bool> initializeMessages(String localeName) {
var availableLocale = Intl.verifiedLocale(
localeName, (locale) => _deferredLibraries[locale] != null,
onFailure: (_) => null);
localeName,
(locale) => _deferredLibraries[locale] != null,
onFailure: (_) => null,
);
if (availableLocale == null) {
return new SynchronousFuture(false);
}
@ -68,8 +70,11 @@ bool _messagesExistFor(String locale) {
}
MessageLookupByLibrary? _findGeneratedMessagesFor(String locale) {
var actualLocale =
Intl.verifiedLocale(locale, _messagesExistFor, onFailure: (_) => null);
var actualLocale = Intl.verifiedLocale(
locale,
_messagesExistFor,
onFailure: (_) => null,
);
if (actualLocale == null) return null;
return _findExact(actualLocale);
}

File diff suppressed because it is too large Load Diff

View File

@ -41,104 +41,122 @@ class MessageLookup extends MessageLookupByLibrary {
final messages = _notInlinedMessages(_notInlinedMessages);
static Map<String, Function> _notInlinedMessages(_) => <String, Function>{
"about_action_email":
MessageLookupByLibrary.simpleMessage("メール: xkeyc@qq.com"),
"about_action_open_source":
MessageLookupByLibrary.simpleMessage("オープンソース"),
"about_analytics_install_translation":
MessageLookupByLibrary.simpleMessage("日本語化インストール"),
"about_analytics_launch": MessageLookupByLibrary.simpleMessage("起動"),
"about_analytics_launch_game":
MessageLookupByLibrary.simpleMessage("ゲームを起動"),
"about_analytics_p4k_redirection":
MessageLookupByLibrary.simpleMessage("P4Kダウンロード"),
"about_analytics_total_users":
MessageLookupByLibrary.simpleMessage("利用者数"),
"about_analytics_units_times":
MessageLookupByLibrary.simpleMessage(""),
"about_analytics_units_user": MessageLookupByLibrary.simpleMessage(""),
"about_check_update": MessageLookupByLibrary.simpleMessage("更新チェック"),
"about_disclaimer": MessageLookupByLibrary.simpleMessage(
"これは Star Citizen の非公式ツールです、Cloud Imperium Games LLC の所有ではない。 本ソフトウェアのホストまたは使用者によって作成されていないすべての情報は、それぞれの所有者に帰属します。 \nStar Citizen®、Roberts Space Industries®、Cloud Imperium® は Cloud Imperium Rights LLC のトレードマーク。"),
"about_info_latest_version":
MessageLookupByLibrary.simpleMessage("すでに最新バージョンだ!"),
"about_online_feedback":
MessageLookupByLibrary.simpleMessage("フィードバック"),
"action_close": MessageLookupByLibrary.simpleMessage("クローズ"),
"action_open_folder": MessageLookupByLibrary.simpleMessage("ォルダを開く"),
"app_index_version_info": m2,
"app_language_code": MessageLookupByLibrary.simpleMessage("ja"),
"app_language_name": MessageLookupByLibrary.simpleMessage("日本語"),
"downloader_action_cancel_all":
MessageLookupByLibrary.simpleMessage("すべてキャンセル"),
"downloader_action_cancel_download":
MessageLookupByLibrary.simpleMessage("ダウンロードをキャンセル"),
"downloader_action_confirm_cancel_all_tasks":
MessageLookupByLibrary.simpleMessage("すべてのタスクのキャンセルを確認する?"),
"downloader_action_confirm_cancel_download":
MessageLookupByLibrary.simpleMessage("ダウンロードのキャンセルを確認しますか?"),
"downloader_action_continue_download":
MessageLookupByLibrary.simpleMessage("ダウンロードを続ける"),
"downloader_action_options":
MessageLookupByLibrary.simpleMessage("オプション"),
"downloader_action_pause_all":
MessageLookupByLibrary.simpleMessage("すべて一時停止"),
"downloader_action_pause_download":
MessageLookupByLibrary.simpleMessage("ダウンロードの一時停止"),
"downloader_action_resume_all":
MessageLookupByLibrary.simpleMessage("すべて復元"),
"downloader_info_deleted": MessageLookupByLibrary.simpleMessage("削除済み"),
"downloader_info_download_completed":
MessageLookupByLibrary.simpleMessage("ダウンロード完了"),
"downloader_info_download_failed":
MessageLookupByLibrary.simpleMessage("ダウンロード失敗"),
"downloader_info_download_upload_speed": m19,
"downloader_info_downloaded": m20,
"downloader_info_downloading": m21,
"downloader_info_downloading_status":
MessageLookupByLibrary.simpleMessage("ダウンロード中..."),
"downloader_info_manual_file_deletion_note":
MessageLookupByLibrary.simpleMessage(
"ダウンロードしたファイルが不要になった場合は、手動で削除する必要があります。"),
"downloader_info_no_download_tasks":
MessageLookupByLibrary.simpleMessage("ダウンロードタスクなし"),
"downloader_info_paused": MessageLookupByLibrary.simpleMessage("一時停止中"),
"downloader_info_status": m22,
"downloader_info_total_size": m23,
"downloader_info_uploaded": m24,
"downloader_info_verifying": m25,
"downloader_info_waiting": MessageLookupByLibrary.simpleMessage("待機中"),
"downloader_speed_limit_settings":
MessageLookupByLibrary.simpleMessage("速度制限設定"),
"downloader_title_downloading":
MessageLookupByLibrary.simpleMessage("ダウンロード中"),
"downloader_title_ended": MessageLookupByLibrary.simpleMessage("終了"),
"home_action_login_rsi_account":
MessageLookupByLibrary.simpleMessage("RSI アカウントログイン"),
"home_action_one_click_launch":
MessageLookupByLibrary.simpleMessage("ワンクリック起動"),
"home_holiday_countdown":
MessageLookupByLibrary.simpleMessage("祝日カウントダウン"),
"home_holiday_countdown_disclaimer":
MessageLookupByLibrary.simpleMessage(
"* 上記の祝日は手作業で収集・管理されているため、誤りがある可能性があります、フィードバックは歓迎する!!"),
"home_login_action_title_box_one_click_launch":
MessageLookupByLibrary.simpleMessage("ボックスワンクリック起動"),
"home_login_action_title_need_webview2_runtime":
MessageLookupByLibrary.simpleMessage("WebView2 Runtime のインストールが必要"),
"home_login_info_action_ignore":
MessageLookupByLibrary.simpleMessage("無視する"),
"home_login_info_game_version_outdated":
MessageLookupByLibrary.simpleMessage("ゲームバージョンが古すぎる"),
"home_login_info_one_click_launch_description":
MessageLookupByLibrary.simpleMessage(
"この機能は、ゲームをより便利に起動するのに役立ちます。\n\nアカウントのセキュリティを確保するため、この機能はローカライズブラウザを使用してログイン状態を保持し、パスワード情報を保存しません(自動入力オンの場合を除く)。\n\nこの機能を使用してアカウントにログインする際は、SCToolBox が信頼できるソースからダウンロードされていることを確認してください。"),
"home_login_info_rsi_server_report": m35,
"home_login_title_launching_game":
MessageLookupByLibrary.simpleMessage("ゲーム起動中..."),
"home_login_title_welcome_back":
MessageLookupByLibrary.simpleMessage("お帰りなさい!"),
"home_title_logging_in":
MessageLookupByLibrary.simpleMessage("ログイン中...")
};
"about_action_email": MessageLookupByLibrary.simpleMessage(
"メール: xkeyc@qq.com",
),
"about_action_open_source": MessageLookupByLibrary.simpleMessage("オープンソース"),
"about_analytics_install_translation": MessageLookupByLibrary.simpleMessage(
"日本語化インストール",
),
"about_analytics_launch": MessageLookupByLibrary.simpleMessage("起動"),
"about_analytics_launch_game": MessageLookupByLibrary.simpleMessage(
"ゲームを起動",
),
"about_analytics_p4k_redirection": MessageLookupByLibrary.simpleMessage(
"P4Kダウンロード",
),
"about_analytics_total_users": MessageLookupByLibrary.simpleMessage("利用者数"),
"about_analytics_units_times": MessageLookupByLibrary.simpleMessage(""),
"about_analytics_units_user": MessageLookupByLibrary.simpleMessage(""),
"about_check_update": MessageLookupByLibrary.simpleMessage("更新チェック"),
"about_disclaimer": MessageLookupByLibrary.simpleMessage(
"これは Star Citizen の非公式ツールです、Cloud Imperium Games LLC の所有ではない。 本ソフトウェアのホストまたは使用者によって作成されていないすべての情報は、それぞれの所有者に帰属します。 \nStar Citizen®、Roberts Space Industries®、Cloud Imperium® は Cloud Imperium Rights LLC のトレードマーク。",
),
"about_info_latest_version": MessageLookupByLibrary.simpleMessage(
"すでに最新バージョンだ!",
),
"about_online_feedback": MessageLookupByLibrary.simpleMessage("ィードバック"),
"action_close": MessageLookupByLibrary.simpleMessage("クローズ"),
"action_open_folder": MessageLookupByLibrary.simpleMessage("フォルダを開く"),
"app_index_version_info": m2,
"app_language_code": MessageLookupByLibrary.simpleMessage("ja"),
"app_language_name": MessageLookupByLibrary.simpleMessage("日本語"),
"downloader_action_cancel_all": MessageLookupByLibrary.simpleMessage(
"すべてキャンセル",
),
"downloader_action_cancel_download": MessageLookupByLibrary.simpleMessage(
"ダウンロードをキャンセル",
),
"downloader_action_confirm_cancel_all_tasks":
MessageLookupByLibrary.simpleMessage("すべてのタスクのキャンセルを確認する?"),
"downloader_action_confirm_cancel_download":
MessageLookupByLibrary.simpleMessage("ダウンロードのキャンセルを確認しますか?"),
"downloader_action_continue_download": MessageLookupByLibrary.simpleMessage(
"ダウンロードを続ける",
),
"downloader_action_options": MessageLookupByLibrary.simpleMessage("オプション"),
"downloader_action_pause_all": MessageLookupByLibrary.simpleMessage(
"すべて一時停止",
),
"downloader_action_pause_download": MessageLookupByLibrary.simpleMessage(
"ダウンロードの一時停止",
),
"downloader_action_resume_all": MessageLookupByLibrary.simpleMessage(
"すべて復元",
),
"downloader_info_deleted": MessageLookupByLibrary.simpleMessage("削除済み"),
"downloader_info_download_completed": MessageLookupByLibrary.simpleMessage(
"ダウンロード完了",
),
"downloader_info_download_failed": MessageLookupByLibrary.simpleMessage(
"ダウンロード失敗",
),
"downloader_info_download_upload_speed": m19,
"downloader_info_downloaded": m20,
"downloader_info_downloading": m21,
"downloader_info_downloading_status": MessageLookupByLibrary.simpleMessage(
"ダウンロード中...",
),
"downloader_info_manual_file_deletion_note":
MessageLookupByLibrary.simpleMessage(
"ダウンロードしたファイルが不要になった場合は、手動で削除する必要があります。",
),
"downloader_info_no_download_tasks": MessageLookupByLibrary.simpleMessage(
"ダウンロードタスクなし",
),
"downloader_info_paused": MessageLookupByLibrary.simpleMessage("一時停止中"),
"downloader_info_status": m22,
"downloader_info_total_size": m23,
"downloader_info_uploaded": m24,
"downloader_info_verifying": m25,
"downloader_info_waiting": MessageLookupByLibrary.simpleMessage("待機中"),
"downloader_speed_limit_settings": MessageLookupByLibrary.simpleMessage(
"速度制限設定",
),
"downloader_title_downloading": MessageLookupByLibrary.simpleMessage(
"ダウンロード中",
),
"downloader_title_ended": MessageLookupByLibrary.simpleMessage("終了"),
"home_action_login_rsi_account": MessageLookupByLibrary.simpleMessage(
"RSI アカウントログイン",
),
"home_action_one_click_launch": MessageLookupByLibrary.simpleMessage(
"ワンクリック起動",
),
"home_holiday_countdown": MessageLookupByLibrary.simpleMessage("祝日カウントダウン"),
"home_holiday_countdown_disclaimer": MessageLookupByLibrary.simpleMessage(
"* 上記の祝日は手作業で収集・管理されているため、誤りがある可能性があります、フィードバックは歓迎する!!",
),
"home_login_action_title_box_one_click_launch":
MessageLookupByLibrary.simpleMessage("ボックスワンクリック起動"),
"home_login_action_title_need_webview2_runtime":
MessageLookupByLibrary.simpleMessage("WebView2 Runtime のインストールが必要"),
"home_login_info_action_ignore": MessageLookupByLibrary.simpleMessage(
"無視する",
),
"home_login_info_game_version_outdated":
MessageLookupByLibrary.simpleMessage("ゲームバージョンが古すぎる"),
"home_login_info_one_click_launch_description":
MessageLookupByLibrary.simpleMessage(
"この機能は、ゲームをより便利に起動するのに役立ちます。\n\nアカウントのセキュリティを確保するため、この機能はローカライズブラウザを使用してログイン状態を保持し、パスワード情報を保存しません(自動入力オンの場合を除く)。\n\nこの機能を使用してアカウントにログインする際は、SCToolBox が信頼できるソースからダウンロードされていることを確認してください。",
),
"home_login_info_rsi_server_report": m35,
"home_login_title_launching_game": MessageLookupByLibrary.simpleMessage(
"ゲーム起動中...",
),
"home_login_title_welcome_back": MessageLookupByLibrary.simpleMessage(
"お帰りなさい!",
),
"home_title_logging_in": MessageLookupByLibrary.simpleMessage("ログイン中..."),
};
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -18,17 +18,20 @@ class 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.');
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 name =
(locale.countryCode?.isEmpty ?? false)
? locale.languageCode
: locale.toString();
final localeName = Intl.canonicalizedLocale(name);
return initializeMessages(localeName).then((_) {
Intl.defaultLocale = localeName;
@ -41,8 +44,10 @@ class S {
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?');
assert(
instance != null,
'No instance of S present in the widget tree. Did you add S.delegate in localizationsDelegates?',
);
return instance!;
}
@ -62,12 +67,7 @@ class S {
/// `en`
String get app_language_code {
return Intl.message(
'en',
name: 'app_language_code',
desc: '',
args: [],
);
return Intl.message('en', name: 'app_language_code', desc: '', args: []);
}
/// `SCToolBox V {v0} {v1}`
@ -382,12 +382,7 @@ class S {
/// `Close`
String get action_close {
return Intl.message(
'Close',
name: 'action_close',
desc: '',
args: [],
);
return Intl.message('Close', name: 'action_close', desc: '', args: []);
}
/// `Speed limit setting`
@ -1602,7 +1597,12 @@ class S {
/// `The game exits normally\nexitCode = {v0}\nstdout = {v1}\nstderr = {v2}\n\nDiagnostic information: {v3}\n{v4}`
String home_action_info_abnormal_game_exit(
Object v0, Object v1, Object v2, Object v3, Object v4) {
Object v0,
Object v1,
Object v2,
Object v3,
Object v4,
) {
return Intl.message(
'The game exits normally\nexitCode = $v0\nstdout = $v1\nstderr = $v2\n\nDiagnostic information: $v3\n$v4',
name: 'home_action_info_abnormal_game_exit',
@ -3053,7 +3053,12 @@ class S {
/// `System: {v0}\n\nProcessor: {v1}\n\nMemory size: {v2} gb\n\nGraphics card information:\n{v3}\n\nStorage information:\n{v4}\n\n`
String tools_action_info_system_info_content(
Object v0, Object v1, Object v2, Object v3, Object v4) {
Object v0,
Object v1,
Object v2,
Object v3,
Object v4,
) {
return Intl.message(
'System: $v0\n\nProcessor: $v1\n\nMemory size: $v2 gb\n\nGraphics card information:\n$v3\n\nStorage information:\n$v4\n\n',
name: 'tools_action_info_system_info_content',
@ -3424,12 +3429,7 @@ class S {
/// `Hint`
String get app_common_tip {
return Intl.message(
'Hint',
name: 'app_common_tip',
desc: '',
args: [],
);
return Intl.message('Hint', name: 'app_common_tip', desc: '', args: []);
}
/// `I understand`
@ -4654,7 +4654,8 @@ class S {
/// `Read the RSI Launcher information failure: {v0}`
String tools_rsi_launcher_enhance_msg_error_get_launcher_info_error_with_args(
Object v0) {
Object v0,
) {
return Intl.message(
'Read the RSI Launcher information failure: $v0',
name:
@ -5303,6 +5304,176 @@ class S {
args: [],
);
}
/// `Thank you for using SC Toolbox, I am its developer xkeyC.\nThe toolbox is committed to open source and providing free services to all players. Providing free services is a challenging task, and I would be grateful if you consider buying me a drink.\nThe donated funds will be used for server expenses, development of new features, and improving the motivation for software maintenance.`
String get support_dev_thanks_message {
return Intl.message(
'Thank you for using SC Toolbox, I am its developer xkeyC.\nThe toolbox is committed to open source and providing free services to all players. Providing free services is a challenging task, and I would be grateful if you consider buying me a drink.\nThe donated funds will be used for server expenses, development of new features, and improving the motivation for software maintenance.',
name: 'support_dev_thanks_message',
desc: '',
args: [],
);
}
/// `Thank you for using SC Toolbox, I am its developer xkeyC.\nThe toolbox is committed to open source and providing free services to all players.`
String get support_dev_thanks_message_part1 {
return Intl.message(
'Thank you for using SC Toolbox, I am its developer xkeyC.\nThe toolbox is committed to open source and providing free services to all players.',
name: 'support_dev_thanks_message_part1',
desc: '',
args: [],
);
}
/// `Providing free services is a challenging task, and I would be grateful if you consider buying me a drink.\nThe donated funds will be used for server expenses, development of new features, and improving the motivation for software maintenance.`
String get support_dev_thanks_message_part2 {
return Intl.message(
'Providing free services is a challenging task, and I would be grateful if you consider buying me a drink.\nThe donated funds will be used for server expenses, development of new features, and improving the motivation for software maintenance.',
name: 'support_dev_thanks_message_part2',
desc: '',
args: [],
);
}
/// `If you haven't registered the game or filled in a referral code yet, please consider using mine: STAR-3YXS-SWTC. Thank you for reading this far.`
String get support_dev_referral_code_message {
return Intl.message(
'If you haven\'t registered the game or filled in a referral code yet, please consider using mine: STAR-3YXS-SWTC. Thank you for reading this far.',
name: 'support_dev_referral_code_message',
desc: '',
args: [],
);
}
/// `Support the Developer`
String get support_dev_title {
return Intl.message(
'Support the Developer',
name: 'support_dev_title',
desc: '',
args: [],
);
}
/// `You can also star my project on GitHub`
String get support_dev_github_star_message {
return Intl.message(
'You can also star my project on GitHub',
name: 'support_dev_github_star_message',
desc: '',
args: [],
);
}
/// `Star Project`
String get support_dev_github_star_button {
return Intl.message(
'Star Project',
name: 'support_dev_github_star_button',
desc: '',
args: [],
);
}
/// `In-game Currency`
String get support_dev_in_game_currency_title {
return Intl.message(
'In-game Currency',
name: 'support_dev_in_game_currency_title',
desc: '',
args: [],
);
}
/// `Game ID: xkeyC`
String get support_dev_in_game_id {
return Intl.message(
'Game ID: xkeyC',
name: 'support_dev_in_game_id',
desc: '',
args: [],
);
}
/// `Game ID copied`
String get support_dev_in_game_id_copied {
return Intl.message(
'Game ID copied',
name: 'support_dev_in_game_id_copied',
desc: '',
args: [],
);
}
/// `Copy`
String get support_dev_copy_button {
return Intl.message(
'Copy',
name: 'support_dev_copy_button',
desc: '',
args: [],
);
}
/// `You can send me aUEC in the game as support, which will help me get a better gaming experience in limited time`
String get support_dev_in_game_currency_message {
return Intl.message(
'You can send me aUEC in the game as support, which will help me get a better gaming experience in limited time',
name: 'support_dev_in_game_currency_message',
desc: '',
args: [],
);
}
/// `Alipay`
String get support_dev_alipay {
return Intl.message(
'Alipay',
name: 'support_dev_alipay',
desc: '',
args: [],
);
}
/// `WeChat`
String get support_dev_wechat {
return Intl.message(
'WeChat',
name: 'support_dev_wechat',
desc: '',
args: [],
);
}
/// `* Please note: Donations are voluntary gifts, and you will not receive any additional benefits in software experience.`
String get support_dev_donation_disclaimer {
return Intl.message(
'* Please note: Donations are voluntary gifts, and you will not receive any additional benefits in software experience.',
name: 'support_dev_donation_disclaimer',
desc: '',
args: [],
);
}
/// `Back`
String get support_dev_back_button {
return Intl.message(
'Back',
name: 'support_dev_back_button',
desc: '',
args: [],
);
}
/// `Scroll down for more`
String get support_dev_scroll_hint {
return Intl.message(
'Scroll down for more',
name: 'support_dev_scroll_hint',
desc: '',
args: [],
);
}
}
class AppLocalizationDelegate extends LocalizationsDelegate<S> {