Skip to content

Commit 4b37fc4

Browse files
committed
i18n: Replace Chinese fallback values with English and add missing translations
- Replace all Chinese default values in CustomNode.tsx with English - Add missing translations for workflow output directory fields: - workflow.nodeDefs.output/file.params.outputDir.placeholder - workflow.outputDirFallbackHint - workflow.selectDirectory - workflow.openFolder - workflow.openWorkflowFolder - Translate smartPlayground section for all 18 languages - Ensure consistent localization across all supported languages Affected languages: en, zh-CN, zh-TW, ja, ko, ar, de, es, fr, hi, id, it, ms, pt, ru, th, tr, vi
1 parent 7b9415c commit 4b37fc4

21 files changed

Lines changed: 394 additions & 301 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Cross-platform applications for running AI models from [WaveSpeedAI](https://wav
99
[![Android](https://img.shields.io/badge/Android-3DDC84?style=for-the-badge&logo=android&logoColor=white)](https://github.com/WaveSpeedAI/wavespeed-desktop/releases/latest/download/WaveSpeed-Mobile.apk)
1010

1111
![Playground Screenshot](https://github.com/user-attachments/assets/904a3ff8-c302-4b84-851b-34a76486c891)
12-
![Workflow Screenshot](https://github.com/user-attachments/assets/f54bea9d-7d63-42c2-80ce-ea76e5dc5de4)
12+
![Workflow Screenshot](https://github.com/user-attachments/assets/4886252b-3510-46d3-959d-f4b4f09e72ab)
1313
![Face Swapper Screenshot](https://github.com/user-attachments/assets/f9eb0022-4bf7-4efd-a9a6-43138ab5cfcb)
1414
![Z-Image Screenshot](https://github.com/user-attachments/assets/f2eabfb1-a613-4b01-9f84-a5ae5fd07638)
1515

src/components/layout/Sidebar.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ export function Sidebar({ collapsed, onToggle, lastFreeToolsPage, isMobileOpen,
195195
{group.items.map((item) => {
196196
const active = isActive(item)
197197
const showTooltip = collapsed && !isMobileOpen && tooltipReady
198-
const isNewFeature = false
198+
const isNewFeature = item.href === '/workflow'
199199
return (
200200
<Tooltip key={item.href} delayDuration={0} open={showTooltip ? undefined : false}>
201201
<TooltipTrigger asChild>

src/i18n/locales/ar.json

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -935,24 +935,24 @@
935935
"downloadFailed": "فشل التنزيل"
936936
},
937937
"smartPlayground": {
938-
"autoDetected": "Auto-detected variant",
939-
"willCall": "Will call",
940-
"toggleSpeed": "Speed",
941-
"toggleMode": "Mode",
942-
"toggleQuality": "Quality",
943-
"speedNormal": "Normal",
944-
"speedFast": "Fast",
945-
"modeNormal": "Normal",
946-
"modeSequential": "Sequential",
947-
"qualityPro": "Pro",
948-
"qualityStd": "Standard",
949-
"qualityUltra": "Ultra",
950-
"qualityMulti": "Multi",
951-
"run": "Run",
952-
"running": "Running...",
953-
"input": "Input",
954-
"output": "Output",
955-
"back": "Back"
938+
"autoDetected": "متغير تم اكتشافه تلقائيًا",
939+
"willCall": "سيتم الاتصال",
940+
"toggleSpeed": "السرعة",
941+
"toggleMode": "الوضع",
942+
"toggleQuality": "الجودة",
943+
"speedNormal": "عادي",
944+
"speedFast": "سريع",
945+
"modeNormal": "عادي",
946+
"modeSequential": "تسلسلي",
947+
"qualityPro": "احترافي",
948+
"qualityStd": "قياسي",
949+
"qualityUltra": "فائق",
950+
"qualityMulti": "متعدد",
951+
"run": "تشغيل",
952+
"running": "قيد التشغيل...",
953+
"input": "إدخال",
954+
"output": "إخراج",
955+
"back": "رجوع"
956956
},
957957
"videoConverter": {
958958
"title": "محول الفيديو",
@@ -985,6 +985,10 @@
985985
"saveFailed": "فشل الحفظ",
986986
"savedAt": "تم الحفظ",
987987
"unsaved": "غير محفوظ",
988+
"outputDirFallbackHint": "غير محدد: سيتم التصدير إلى المجلد الافتراضي لسير العمل",
989+
"selectDirectory": "اختر المجلد",
990+
"openFolder": "فتح المجلد",
991+
"openWorkflowFolder": "فتح مجلد سير العمل",
988992
"nodes": "العقد",
989993
"config": "الإعدادات",
990994
"results": "النتائج",
@@ -1153,7 +1157,8 @@
11531157
},
11541158
"params": {
11551159
"outputDir": {
1156-
"label": "مجلد الإخراج"
1160+
"label": "مجلد الإخراج",
1161+
"placeholder": "اتركه فارغاً لاستخدام مجلد الإخراج الافتراضي لسير العمل"
11571162
},
11581163
"filename": {
11591164
"label": "بادئة اسم الملف"
@@ -1303,4 +1308,4 @@
13031308
}
13041309
}
13051310
}
1306-
}
1311+
}

src/i18n/locales/de.json

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -939,24 +939,24 @@
939939
"clickToPlay": "Klicken zum Starten"
940940
},
941941
"smartPlayground": {
942-
"autoDetected": "Auto-detected variant",
943-
"willCall": "Will call",
944-
"toggleSpeed": "Speed",
945-
"toggleMode": "Mode",
946-
"toggleQuality": "Quality",
942+
"autoDetected": "Automatisch erkannte Variante",
943+
"willCall": "Wird aufrufen",
944+
"toggleSpeed": "Geschwindigkeit",
945+
"toggleMode": "Modus",
946+
"toggleQuality": "Qualität",
947947
"speedNormal": "Normal",
948-
"speedFast": "Fast",
948+
"speedFast": "Schnell",
949949
"modeNormal": "Normal",
950-
"modeSequential": "Sequential",
950+
"modeSequential": "Sequenziell",
951951
"qualityPro": "Pro",
952952
"qualityStd": "Standard",
953953
"qualityUltra": "Ultra",
954954
"qualityMulti": "Multi",
955-
"run": "Run",
956-
"running": "Running...",
957-
"input": "Input",
958-
"output": "Output",
959-
"back": "Back"
955+
"run": "Ausführen",
956+
"running": "Wird ausgeführt...",
957+
"input": "Eingabe",
958+
"output": "Ausgabe",
959+
"back": "Zurück"
960960
},
961961
"videoConverter": {
962962
"title": "Video-Konverter",
@@ -985,6 +985,10 @@
985985
"saveFailed": "Speichern fehlgeschlagen",
986986
"savedAt": "Gespeichert",
987987
"unsaved": "Nicht gespeichert",
988+
"outputDirFallbackHint": "Nicht festgelegt: Export erfolgt in das Standard-Workflow-Verzeichnis",
989+
"selectDirectory": "Verzeichnis auswählen",
990+
"openFolder": "Ordner öffnen",
991+
"openWorkflowFolder": "Workflow-Ordner öffnen",
988992
"nodes": "Knoten",
989993
"config": "Konfiguration",
990994
"results": "Ergebnisse",
@@ -1153,7 +1157,8 @@
11531157
},
11541158
"params": {
11551159
"outputDir": {
1156-
"label": "Ausgabeverzeichnis"
1160+
"label": "Ausgabeverzeichnis",
1161+
"placeholder": "Leer lassen, um das Standard-Ausgabeverzeichnis des Workflows zu verwenden"
11571162
},
11581163
"filename": {
11591164
"label": "Dateinamenspräfix"
@@ -1303,4 +1308,4 @@
13031308
}
13041309
}
13051310
}
1306-
}
1311+
}

src/i18n/locales/en.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -985,6 +985,10 @@
985985
"saveFailed": "Save failed",
986986
"savedAt": "Saved",
987987
"unsaved": "unsaved",
988+
"outputDirFallbackHint": "Not set: will export to workflow default directory",
989+
"selectDirectory": "Select directory",
990+
"openFolder": "Open folder",
991+
"openWorkflowFolder": "Open workflow folder",
988992
"nodes": "Nodes",
989993
"config": "Config",
990994
"results": "Results",
@@ -998,7 +1002,6 @@
9981002
"nameYourWorkflowDesc": "Give it a name to save to disk and enable execution.",
9991003
"nameYourWorkflowPlaceholder": "e.g. Product Image Pipeline",
10001004
"nameDuplicate": "A workflow with this name already exists",
1001-
"cancel": "Cancel",
10021005
"runTarget": "Run target",
10031006
"runTargetAll": "Run All Nodes",
10041007
"runTargetSelected": "Run Selected Node",
@@ -1157,7 +1160,8 @@
11571160
},
11581161
"params": {
11591162
"outputDir": {
1160-
"label": "Output Directory"
1163+
"label": "Output Directory",
1164+
"placeholder": "Leave empty to use workflow default output directory"
11611165
},
11621166
"filename": {
11631167
"label": "Filename Prefix"

src/i18n/locales/es.json

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -939,24 +939,24 @@
939939
"clickToPlay": "Haz clic para empezar"
940940
},
941941
"smartPlayground": {
942-
"autoDetected": "Auto-detected variant",
943-
"willCall": "Will call",
944-
"toggleSpeed": "Speed",
945-
"toggleMode": "Mode",
946-
"toggleQuality": "Quality",
942+
"autoDetected": "Variante detectada automáticamente",
943+
"willCall": "Llamará",
944+
"toggleSpeed": "Velocidad",
945+
"toggleMode": "Modo",
946+
"toggleQuality": "Calidad",
947947
"speedNormal": "Normal",
948-
"speedFast": "Fast",
948+
"speedFast": "Rápido",
949949
"modeNormal": "Normal",
950-
"modeSequential": "Sequential",
950+
"modeSequential": "Secuencial",
951951
"qualityPro": "Pro",
952-
"qualityStd": "Standard",
952+
"qualityStd": "Estándar",
953953
"qualityUltra": "Ultra",
954954
"qualityMulti": "Multi",
955-
"run": "Run",
956-
"running": "Running...",
957-
"input": "Input",
958-
"output": "Output",
959-
"back": "Back"
955+
"run": "Ejecutar",
956+
"running": "Ejecutando...",
957+
"input": "Entrada",
958+
"output": "Salida",
959+
"back": "Atrás"
960960
},
961961
"videoConverter": {
962962
"title": "Convertidor de Video",
@@ -985,6 +985,10 @@
985985
"saveFailed": "Error al guardar",
986986
"savedAt": "Guardado",
987987
"unsaved": "Sin guardar",
988+
"outputDirFallbackHint": "No establecido: se exportará al directorio predeterminado del flujo de trabajo",
989+
"selectDirectory": "Seleccionar directorio",
990+
"openFolder": "Abrir carpeta",
991+
"openWorkflowFolder": "Abrir carpeta de flujo de trabajo",
988992
"nodes": "Nodos",
989993
"config": "Configuración",
990994
"results": "Resultados",
@@ -1153,7 +1157,8 @@
11531157
},
11541158
"params": {
11551159
"outputDir": {
1156-
"label": "Directorio de salida"
1160+
"label": "Directorio de salida",
1161+
"placeholder": "Dejar vacío para usar el directorio de salida predeterminado del flujo de trabajo"
11571162
},
11581163
"filename": {
11591164
"label": "Prefijo de nombre"
@@ -1303,4 +1308,4 @@
13031308
}
13041309
}
13051310
}
1306-
}
1311+
}

src/i18n/locales/fr.json

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -939,24 +939,24 @@
939939
"clickToPlay": "Cliquez pour commencer"
940940
},
941941
"smartPlayground": {
942-
"autoDetected": "Auto-detected variant",
943-
"willCall": "Will call",
944-
"toggleSpeed": "Speed",
942+
"autoDetected": "Variante détectée automatiquement",
943+
"willCall": "Appellera",
944+
"toggleSpeed": "Vitesse",
945945
"toggleMode": "Mode",
946-
"toggleQuality": "Quality",
946+
"toggleQuality": "Qualité",
947947
"speedNormal": "Normal",
948-
"speedFast": "Fast",
948+
"speedFast": "Rapide",
949949
"modeNormal": "Normal",
950-
"modeSequential": "Sequential",
950+
"modeSequential": "Séquentiel",
951951
"qualityPro": "Pro",
952952
"qualityStd": "Standard",
953953
"qualityUltra": "Ultra",
954954
"qualityMulti": "Multi",
955-
"run": "Run",
956-
"running": "Running...",
957-
"input": "Input",
958-
"output": "Output",
959-
"back": "Back"
955+
"run": "Exécuter",
956+
"running": "En cours...",
957+
"input": "Entrée",
958+
"output": "Sortie",
959+
"back": "Retour"
960960
},
961961
"videoConverter": {
962962
"title": "Convertisseur Vidéo",
@@ -985,6 +985,10 @@
985985
"saveFailed": "Échec de l'enregistrement",
986986
"savedAt": "Enregistré",
987987
"unsaved": "Non enregistré",
988+
"outputDirFallbackHint": "Non défini : exportera vers le répertoire par défaut du workflow",
989+
"selectDirectory": "Sélectionner le répertoire",
990+
"openFolder": "Ouvrir le dossier",
991+
"openWorkflowFolder": "Ouvrir le dossier du workflow",
988992
"nodes": "Nœuds",
989993
"config": "Configuration",
990994
"results": "Résultats",
@@ -1153,7 +1157,8 @@
11531157
},
11541158
"params": {
11551159
"outputDir": {
1156-
"label": "Répertoire de sortie"
1160+
"label": "Répertoire de sortie",
1161+
"placeholder": "Laisser vide pour utiliser le répertoire de sortie par défaut du workflow"
11571162
},
11581163
"filename": {
11591164
"label": "Préfixe du nom"
@@ -1303,4 +1308,4 @@
13031308
}
13041309
}
13051310
}
1306-
}
1311+
}

src/i18n/locales/hi.json

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -939,24 +939,24 @@
939939
"clickToPlay": "शुरू करने के लिए क्लिक करें"
940940
},
941941
"smartPlayground": {
942-
"autoDetected": "Auto-detected variant",
943-
"willCall": "Will call",
944-
"toggleSpeed": "Speed",
945-
"toggleMode": "Mode",
946-
"toggleQuality": "Quality",
947-
"speedNormal": "Normal",
948-
"speedFast": "Fast",
949-
"modeNormal": "Normal",
950-
"modeSequential": "Sequential",
951-
"qualityPro": "Pro",
952-
"qualityStd": "Standard",
953-
"qualityUltra": "Ultra",
954-
"qualityMulti": "Multi",
955-
"run": "Run",
956-
"running": "Running...",
957-
"input": "Input",
958-
"output": "Output",
959-
"back": "Back"
942+
"autoDetected": "स्वचालित रूप से पहचाना गया संस्करण",
943+
"willCall": "कॉल करेगा",
944+
"toggleSpeed": "गति",
945+
"toggleMode": "मोड",
946+
"toggleQuality": "गुणवत्ता",
947+
"speedNormal": "सामान्य",
948+
"speedFast": "तेज़",
949+
"modeNormal": "सामान्य",
950+
"modeSequential": "क्रमिक",
951+
"qualityPro": "प्रो",
952+
"qualityStd": "मानक",
953+
"qualityUltra": "अल्ट्रा",
954+
"qualityMulti": "मल्टी",
955+
"run": "चलाएं",
956+
"running": "चल रहा है...",
957+
"input": "इनपुट",
958+
"output": "आउटपुट",
959+
"back": "वापस"
960960
},
961961
"videoConverter": {
962962
"title": "वीडियो कनवर्टर",
@@ -985,6 +985,10 @@
985985
"saveFailed": "सहेजने में विफल",
986986
"savedAt": "सहेजा गया",
987987
"unsaved": "असहेजा",
988+
"outputDirFallbackHint": "सेट नहीं: वर्कफ़्लो डिफ़ॉल्ट निर्देशिका में निर्यात किया जाएगा",
989+
"selectDirectory": "निर्देशिका चुनें",
990+
"openFolder": "फ़ोल्डर खोलें",
991+
"openWorkflowFolder": "वर्कफ़्लो फ़ोल्डर खोलें",
988992
"nodes": "नोड",
989993
"config": "कॉन्फ़िगरेशन",
990994
"results": "परिणाम",
@@ -1153,7 +1157,8 @@
11531157
},
11541158
"params": {
11551159
"outputDir": {
1156-
"label": "आउटपुट निर्देशिका"
1160+
"label": "आउटपुट निर्देशिका",
1161+
"placeholder": "वर्कफ़्लो डिफ़ॉल्ट आउटपुट निर्देशिका का उपयोग करने के लिए खाली छोड़ें"
11571162
},
11581163
"filename": {
11591164
"label": "फ़ाइल नाम उपसर्ग"
@@ -1303,4 +1308,4 @@
13031308
}
13041309
}
13051310
}
1306-
}
1311+
}

0 commit comments

Comments
 (0)