diff --git a/ui/v2.5/src/components/Settings/SettingsInterfacePanel/SettingsInterfacePanel.tsx b/ui/v2.5/src/components/Settings/SettingsInterfacePanel/SettingsInterfacePanel.tsx
index 0419f3bd3..086b27cdb 100644
--- a/ui/v2.5/src/components/Settings/SettingsInterfacePanel/SettingsInterfacePanel.tsx
+++ b/ui/v2.5/src/components/Settings/SettingsInterfacePanel/SettingsInterfacePanel.tsx
@@ -148,8 +148,10 @@ export const SettingsInterfacePanel: React.FC = () => {
value={iface.language ?? undefined}
onChange={(v) => saveInterface({ language: v })}
>
+
-
+
+
diff --git a/ui/v2.5/src/locales/af-ZA.json b/ui/v2.5/src/locales/af-ZA.json
new file mode 100644
index 000000000..635dab9f5
--- /dev/null
+++ b/ui/v2.5/src/locales/af-ZA.json
@@ -0,0 +1,46 @@
+{
+ "actions": {
+ "anonymise": "Anonimiseer",
+ "apply": "Pas Toe",
+ "assign_stashid_to_parent_studio": "Ken Stash ID aan bestaande ouerateljee toe en opdateer metadata",
+ "browse_for_image": "Blaai vir beelde…",
+ "choose_date": "Kies 'n datum",
+ "clean": "Maak Skoon",
+ "clean_generated": "Maak gegenereerde lêers skoon",
+ "clear_back_image": "Verwyder agterste beeld",
+ "clear_front_image": "Verwyder voorste beeld",
+ "clear_image": "Verwyder beeld",
+ "close": "Maak toe",
+ "confirm": "Bevestig",
+ "continue": "Gaan voort",
+ "copy_to_clipboard": "Kopieer na knipbord",
+ "create": "Skep",
+ "create_chapters": "Skep hoofstuk",
+ "create_entity": "Skep {entityType}",
+ "create_parent_studio": "Skep ouerateljee",
+ "delete": "Verwyder",
+ "delete_entity": "Verwyder {entityType}",
+ "delete_file_and_funscript": "Verwyder lêer (en funscript)",
+ "delete_generated_supporting_files": "Verwyder gegenereerde ondersteunende lêers",
+ "disable": "Deaktiveer",
+ "disallow": "Verbied",
+ "download": "Laai af",
+ "download_anonymised": "Laai anoniem af",
+ "edit": "Redigeer",
+ "edit_entity": "Redigeer {entityType}",
+ "export": "Voer uit",
+ "export_all": "Voer alles uit…",
+ "find": "Vind",
+ "generate": "Genereer",
+ "allow": "Laat Toe",
+ "allow_temporarily": "Laat tydelik toe",
+ "clear_date_data": "Verwyder datum data",
+ "cancel": "Kanselleer",
+ "create_marker": "Skep Merker",
+ "delete_file": "Verwyder lêer",
+ "enable": "Aktiveer",
+ "from_url": "Van URL…",
+ "full_export": "Volle uitvoer",
+ "full_import": "Volle Invoer"
+ }
+}
diff --git a/ui/v2.5/src/locales/ca.json b/ui/v2.5/src/locales/ca-ES.json
similarity index 100%
rename from ui/v2.5/src/locales/ca.json
rename to ui/v2.5/src/locales/ca-ES.json
diff --git a/ui/v2.5/src/locales/es-ES.json b/ui/v2.5/src/locales/es-ES.json
index 3eb84ca66..d64b9a600 100644
--- a/ui/v2.5/src/locales/es-ES.json
+++ b/ui/v2.5/src/locales/es-ES.json
@@ -764,7 +764,7 @@
"heading": "Página de detalle"
},
"use_stash_hosted_funscript": {
- "description": "Cuando está habilitado, los funscripts se servirán directamente desde Stash a tu dispositivo de prueba sin utilizar el servidor de prueba de terceros. Requiere que Stash sea accesible desde tu dispositivo de prueba.",
+ "description": "Cuando se activa, los funscripts se servirán directamente desde Stash a tu dispositivo Handy sin utilizar el servidor Handy de terceros. Requiere que Stash sea accesible desde tu dispositivo Handy, y que se genere una clave API si stash tiene las credenciales configuradas.",
"heading": "Servir funscripts directamente"
},
"scroll_attempts_before_change": {
diff --git a/ui/v2.5/src/locales/index.ts b/ui/v2.5/src/locales/index.ts
index 2d855414b..1031033b5 100644
--- a/ui/v2.5/src/locales/index.ts
+++ b/ui/v2.5/src/locales/index.ts
@@ -1,7 +1,9 @@
import Countries from "i18n-iso-countries";
export const localeCountries = {
+ af: () => import("i18n-iso-countries/langs/af.json"),
bn: () => import("i18n-iso-countries/langs/bn.json"),
+ ca: () => import("i18n-iso-countries/langs/ca.json"),
cs: () => import("i18n-iso-countries/langs/cs.json"),
da: () => import("i18n-iso-countries/langs/da.json"),
de: () => import("i18n-iso-countries/langs/de.json"),
@@ -44,7 +46,9 @@ export async function registerCountry(locale: string) {
}
export const localeLoader = {
+ afZA: () => import("./af-ZA.json"),
bnBD: () => import("./bn-BD.json"),
+ caES: () => import("./ca-ES.json"),
csCZ: () => import("./cs-CZ.json"),
daDK: () => import("./da-DK.json"),
deDE: () => import("./de-DE.json"),
@@ -62,6 +66,7 @@ export const localeLoader = {
jaJP: () => import("./ja-JP.json"),
koKR: () => import("./ko-KR.json"),
// nbNO: () => import("./nb-NO.json"),
+ // neNP: () => import("./ne-NP.json"),
nlNL: () => import("./nl-NL.json"),
plPL: () => import("./pl-PL.json"),
ptBR: () => import("./pt-BR.json"),
diff --git a/ui/v2.5/src/locales/ne.json b/ui/v2.5/src/locales/ne-NP.json
similarity index 100%
rename from ui/v2.5/src/locales/ne.json
rename to ui/v2.5/src/locales/ne-NP.json
diff --git a/ui/v2.5/src/locales/zh-CN.json b/ui/v2.5/src/locales/zh-CN.json
index ce44d6ca7..f972a74f2 100644
--- a/ui/v2.5/src/locales/zh-CN.json
+++ b/ui/v2.5/src/locales/zh-CN.json
@@ -258,7 +258,9 @@
"successfully_cancelled_temporary_behaviour": "成功取消暂时的服务行为",
"until_restart": "直到服务重启",
"video_sort_order": "默认视频排序",
- "video_sort_order_desc": "默认情况下对视频进行排序。"
+ "video_sort_order_desc": "默认情况下对视频进行排序。",
+ "server_port": "服务器端口",
+ "server_port_desc": "运行DLNA服务器的端口。更改后需要重新启动DLNA。"
},
"general": {
"auth": {
@@ -781,7 +783,7 @@
}
},
"use_stash_hosted_funscript": {
- "description": "启用后,funscript将直接从Stash提供到您的Handy设备,而无需使用第三方Handy服务器。要求您的Handy设备可以访问Stash。",
+ "description": "启用后,funscript将直接从Stash提供到您的Handy设备,而无需使用第三方Handy服务器。要求可以从您的Handy设备访问Stash,并且如果stash配置了凭据,则会生成API密钥。",
"heading": "直接提供funscripts服务"
}
},