From 4683fc7bf13f0b1e5015dee8ba09eb4f3ef3fd5a Mon Sep 17 00:00:00 2001 From: Slinetrac Date: Sun, 2 Nov 2025 13:35:07 +0800 Subject: [PATCH] chore(i18n): pages.profiles.notices/components.providers.notices --- src/components/proxy/provider-button.tsx | 10 +++++----- src/components/rule/provider-button.tsx | 10 +++++----- src/locales/ar.json | 20 +++++++++++++------- src/locales/de.json | 20 +++++++++++++------- src/locales/en.json | 20 +++++++++++++------- src/locales/es.json | 20 +++++++++++++------- src/locales/fa.json | 20 +++++++++++++------- src/locales/id.json | 20 +++++++++++++------- src/locales/jp.json | 20 +++++++++++++------- src/locales/ko.json | 20 +++++++++++++------- src/locales/ru.json | 20 +++++++++++++------- src/locales/tr.json | 20 +++++++++++++------- src/locales/tt.json | 20 +++++++++++++------- src/locales/zh.json | 20 +++++++++++++------- src/locales/zhtw.json | 20 +++++++++++++------- src/pages/profiles.tsx | 8 ++++++-- 16 files changed, 185 insertions(+), 103 deletions(-) diff --git a/src/components/proxy/provider-button.tsx b/src/components/proxy/provider-button.tsx index b0ceee78..e7e99a61 100644 --- a/src/components/proxy/provider-button.tsx +++ b/src/components/proxy/provider-button.tsx @@ -67,13 +67,13 @@ export const ProviderButton = () => { await refreshProxyProviders(); showNotice("success", { - i18nKey: "notice.provider.updateSuccess", + i18nKey: "components.notices.providers.updateSuccess", params: { name }, }); } catch (err: any) { const message = err?.message || err?.toString?.() || String(err); showNotice("error", { - i18nKey: "notice.provider.updateFailed", + i18nKey: "components.notices.providers.updateFailed", params: { name, message }, }); } finally { @@ -89,7 +89,7 @@ export const ProviderButton = () => { const allProviders = Object.keys(proxyProviders || {}); if (allProviders.length === 0) { showNotice("info", { - i18nKey: "notice.provider.none", + i18nKey: "components.notices.providers.none", }); return; } @@ -121,12 +121,12 @@ export const ProviderButton = () => { await refreshProxyProviders(); showNotice("success", { - i18nKey: "notice.provider.allUpdated", + i18nKey: "components.notices.providers.allUpdated", }); } catch (err: any) { const message = err?.message || err?.toString?.() || String(err); showNotice("error", { - i18nKey: "notice.provider.genericError", + i18nKey: "components.notices.providers.genericError", params: { message }, }); } finally { diff --git a/src/components/rule/provider-button.tsx b/src/components/rule/provider-button.tsx index 5aaef093..9b49987e 100644 --- a/src/components/rule/provider-button.tsx +++ b/src/components/rule/provider-button.tsx @@ -59,13 +59,13 @@ export const ProviderButton = () => { await refreshRuleProviders(); showNotice("success", { - i18nKey: "notice.provider.updateSuccess", + i18nKey: "components.notices.providers.updateSuccess", params: { name }, }); } catch (err: any) { const message = err?.message || err?.toString?.() || String(err); showNotice("error", { - i18nKey: "notice.provider.updateFailed", + i18nKey: "components.notices.providers.updateFailed", params: { name, message }, }); } finally { @@ -81,7 +81,7 @@ export const ProviderButton = () => { const allProviders = Object.keys(ruleProviders || {}); if (allProviders.length === 0) { showNotice("info", { - i18nKey: "notice.provider.none", + i18nKey: "components.notices.providers.none", }); return; } @@ -113,12 +113,12 @@ export const ProviderButton = () => { await refreshRuleProviders(); showNotice("success", { - i18nKey: "notice.provider.allUpdated", + i18nKey: "components.notices.providers.allUpdated", }); } catch (err: any) { const message = err?.message || err?.toString?.() || String(err); showNotice("error", { - i18nKey: "notice.provider.genericError", + i18nKey: "components.notices.providers.genericError", params: { message }, }); } finally { diff --git a/src/locales/ar.json b/src/locales/ar.json index 63481a3c..6b08dd3d 100644 --- a/src/locales/ar.json +++ b/src/locales/ar.json @@ -141,6 +141,10 @@ "profileReactivated": "تم إعادة تنشيط الملف الشخصي", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "تم الرفع", "Active Connections": "Active Connections", "Rule": "قاعدة", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "اختبار", "Test All": "اختبار الكل", "Testing...": "Testing...", @@ -1069,6 +1066,15 @@ "applied": "تم تطبيق الإعدادات" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/de.json b/src/locales/de.json index d5167ae5..da067ddc 100644 --- a/src/locales/de.json +++ b/src/locales/de.json @@ -141,6 +141,10 @@ "profileReactivated": "Abonnement erneut aktiviert", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "Hochgeladen", "Active Connections": "Aktive Verbindungen", "Rule": "Regel", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "Testen", "Test All": "Alle testen", "Testing...": "Wird getestet...", @@ -1069,6 +1066,15 @@ "applied": "Einstellungen angewendet" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/en.json b/src/locales/en.json index 6ac44aee..5003b798 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -141,6 +141,10 @@ "profileReactivated": "Profile Reactivated", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "Uploaded", "Active Connections": "Active Connections", "Rule": "Rule", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "Test", "Test All": "Test All", "Testing...": "Testing...", @@ -1069,6 +1066,15 @@ "applied": "Settings Applied" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/es.json b/src/locales/es.json index d578e50d..21e22f77 100644 --- a/src/locales/es.json +++ b/src/locales/es.json @@ -141,6 +141,10 @@ "profileReactivated": "Suscripción reactivada", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "Subido", "Active Connections": "Conexiones activas", "Rule": "Regla", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "Prueba", "Test All": "Probar todo", "Testing...": "Probando...", @@ -1069,6 +1066,15 @@ "applied": "Ajustes aplicados" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/fa.json b/src/locales/fa.json index 2d58244f..aeebb24c 100644 --- a/src/locales/fa.json +++ b/src/locales/fa.json @@ -141,6 +141,10 @@ "profileReactivated": "پروفایل مجدداً فعال شد", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "بارگذاری شده", "Active Connections": "Active Connections", "Rule": "قانون", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "آزمون", "Test All": "آزمون همه", "Testing...": "Testing...", @@ -1069,6 +1066,15 @@ "applied": "تنظیمات اعمال شد" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/id.json b/src/locales/id.json index 6d3f62be..f9b38537 100644 --- a/src/locales/id.json +++ b/src/locales/id.json @@ -141,6 +141,10 @@ "profileReactivated": "Profil Diaktifkan Kembali", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "Diunggah", "Active Connections": "Active Connections", "Rule": "Aturan", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "Tes", "Test All": "Tes Semua", "Testing...": "Testing...", @@ -1069,6 +1066,15 @@ "applied": "Pengaturan Diterapkan" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/jp.json b/src/locales/jp.json index 0ec21544..be3171f9 100644 --- a/src/locales/jp.json +++ b/src/locales/jp.json @@ -141,6 +141,10 @@ "profileReactivated": "プロファイルが再アクティブ化されました。", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "選択したプロファイルが正常に削除されました" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "アップロード量", "Active Connections": "アクティブな接続", "Rule": "ルール", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "テスト", "Test All": "すべてテスト", "Testing...": "テスト中...", @@ -1069,6 +1066,15 @@ "applied": "設定が適用されました。" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/ko.json b/src/locales/ko.json index d92789d4..418788e8 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -141,6 +141,10 @@ "profileReactivated": "Profile Reactivated", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "업로드됨", "Active Connections": "활성 연결", "Rule": "규칙", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "테스트", "Test All": "모두 테스트", "Testing...": "테스트 중...", @@ -1069,6 +1066,15 @@ "applied": "Settings Applied" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/ru.json b/src/locales/ru.json index cb359189..631e0930 100644 --- a/src/locales/ru.json +++ b/src/locales/ru.json @@ -141,6 +141,10 @@ "profileReactivated": "Профиль перезапущен", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Выбранные профили успешно удалены" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "Загружено", "Active Connections": "Активные соединения", "Rule": "Правило", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "Тест", "Test All": "Тестировать все", "Testing...": "Тестирование ...", @@ -1069,6 +1066,15 @@ "applied": "Настройки применены" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/tr.json b/src/locales/tr.json index bd3ef432..224feff0 100644 --- a/src/locales/tr.json +++ b/src/locales/tr.json @@ -141,6 +141,10 @@ "profileReactivated": "Profil Yeniden Etkinleştirildi", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Seçili profiller başarıyla silindi" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "Yüklenen", "Active Connections": "Aktif Bağlantılar", "Rule": "Kural", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "Test", "Test All": "Tümünü Test Et", "Testing...": "Test Ediliyor...", @@ -1069,6 +1066,15 @@ "applied": "Ayarlar Uygulandı" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/tt.json b/src/locales/tt.json index 57c3c952..e45026fd 100644 --- a/src/locales/tt.json +++ b/src/locales/tt.json @@ -141,6 +141,10 @@ "profileReactivated": "Профиль яңадан активлаштырылды", "switchInterrupted": "Profile switch interrupted by new selection", "batchDeleted": "Selected profiles deleted successfully" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "Чыгарылган", "Active Connections": "Active Connections", "Rule": "Кагыйдә", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "Тест", "Test All": "Барчасын тестлау", "Testing...": "Testing...", @@ -1069,6 +1066,15 @@ "applied": "Көйләүләр кулланылды" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/locales/zh.json b/src/locales/zh.json index 5ef2985b..33ac411b 100644 --- a/src/locales/zh.json +++ b/src/locales/zh.json @@ -141,6 +141,10 @@ "profileReactivated": "订阅已激活", "switchInterrupted": "配置切换被新选择中断", "batchDeleted": "选中的订阅已成功删除" + }, + "notices": { + "forceRefreshCompleted": "数据已强制刷新", + "emergencyRefreshFailed": "紧急刷新失败: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "上传量", "Active Connections": "活跃连接", "Rule": "规则", - "notice.forceRefreshCompleted": "数据已强制刷新", - "notice.emergencyRefreshFailed": "紧急刷新失败: {{message}}", - "notice.provider.updateSuccess": "{{name}} 更新成功", - "notice.provider.updateFailed": "{{name}} 更新失败: {{message}}", - "notice.provider.genericError": "更新失败: {{message}}", - "notice.provider.none": "没有可更新的提供者", - "notice.provider.allUpdated": "全部提供者更新成功", "Test": "测试", "Test All": "测试全部", "Testing...": "测试中...", @@ -1069,6 +1066,15 @@ "applied": "设置已应用" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} 更新成功", + "updateFailed": "{{name}} 更新失败: {{message}}", + "genericError": "更新失败: {{message}}", + "none": "没有可更新的提供者", + "allUpdated": "全部提供者更新成功" + } } }, "common": { diff --git a/src/locales/zhtw.json b/src/locales/zhtw.json index 8bb4c47b..bda2ac88 100644 --- a/src/locales/zhtw.json +++ b/src/locales/zhtw.json @@ -141,6 +141,10 @@ "profileReactivated": "訂閱已啟用", "switchInterrupted": "配置切換被新的選擇中斷", "batchDeleted": "選取的訂閱已成功刪除" + }, + "notices": { + "forceRefreshCompleted": "Force refresh completed", + "emergencyRefreshFailed": "Emergency refresh failed: {{message}}" } }, "connections": { @@ -260,13 +264,6 @@ "Uploaded": "上傳量", "Active Connections": "作用中連線", "Rule": "規則", - "notice.forceRefreshCompleted": "Force refresh completed", - "notice.emergencyRefreshFailed": "Emergency refresh failed: {{message}}", - "notice.provider.updateSuccess": "{{name}} updated successfully", - "notice.provider.updateFailed": "Failed to update {{name}}: {{message}}", - "notice.provider.genericError": "Update failed: {{message}}", - "notice.provider.none": "No providers available to update", - "notice.provider.allUpdated": "All providers updated successfully", "Test": "測試", "Test All": "測試全部", "Testing...": "測試中...", @@ -1069,6 +1066,15 @@ "applied": "設定已套用" } } + }, + "providers": { + "notices": { + "updateSuccess": "{{name}} updated successfully", + "updateFailed": "Failed to update {{name}}: {{message}}", + "genericError": "Update failed: {{message}}", + "none": "No providers available to update", + "allUpdated": "All providers updated successfully" + } } }, "common": { diff --git a/src/pages/profiles.tsx b/src/pages/profiles.tsx index dff36f24..ea06b868 100644 --- a/src/pages/profiles.tsx +++ b/src/pages/profiles.tsx @@ -239,14 +239,18 @@ const ProfilePage = () => { await new Promise((resolve) => setTimeout(resolve, 500)); await onEnhance(false); - showNotice("success", { i18nKey: "notice.forceRefreshCompleted" }, 2000); + showNotice( + "success", + { i18nKey: "pages.profiles.notices.forceRefreshCompleted" }, + 2000, + ); } catch (error: any) { console.error("[紧急刷新] 失败:", error); const message = error?.message || String(error); showNotice( "error", { - i18nKey: "notice.emergencyRefreshFailed", + i18nKey: "pages.profiles.notices.emergencyRefreshFailed", params: { message }, }, 4000,