补全翻译
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2026-01-05 18:35:12 +08:00
parent be3eb17490
commit 66d17df59d
9 changed files with 23 additions and 13 deletions

View File

@@ -42,6 +42,7 @@
"text2": "Text 2",
"language1": "Sprache 1",
"language2": "Sprache 2",
"enterLanguageName": "Bitte geben Sie den Sprachennamen ein",
"edit": "Bearbeiten",
"delete": "Löschen"
},

View File

@@ -42,6 +42,7 @@
"text2": "Text 2",
"language1": "Locale 1",
"language2": "Locale 2",
"enterLanguageName": "Please enter language name",
"edit": "Edit",
"delete": "Delete"
},

View File

@@ -42,6 +42,7 @@
"text2": "Texte 2",
"language1": "Langue 1",
"language2": "Langue 2",
"enterLanguageName": "Veuillez entrer le nom de la langue",
"edit": "Modifier",
"delete": "Supprimer"
},

View File

@@ -42,6 +42,7 @@
"text2": "Testo 2",
"language1": "Lingua 1",
"language2": "Lingua 2",
"enterLanguageName": "Inserisci il nome della lingua",
"edit": "Modifica",
"delete": "Elimina"
},

View File

@@ -42,6 +42,7 @@
"text2": "テキスト2",
"language1": "言語1",
"language2": "言語2",
"enterLanguageName": "言語名を入力してください",
"edit": "編集",
"delete": "削除"
},

View File

@@ -42,6 +42,7 @@
"text2": "텍스트 2",
"language1": "언어 1",
"language2": "언어 2",
"enterLanguageName": "언어 이름을 입력하세요",
"edit": "편집",
"delete": "삭제"
},

View File

@@ -42,6 +42,7 @@
"text2": "تېكىست 2",
"language1": "تىل 1",
"language2": "تىل 2",
"enterLanguageName": "تىل نامىنى كىرگۈزۈڭ",
"edit": "تەھرىرلەش",
"delete": "ئۆچۈرۈش"
},

View File

@@ -42,6 +42,7 @@
"text2": "文本2",
"language1": "语言1",
"language2": "语言2",
"enterLanguageName": "请输入语言名称",
"edit": "编辑",
"delete": "删除"
},

View File

@@ -1,17 +1,18 @@
import { useTranslations } from "next-intl";
import { useState } from "react";
const COMMON_LANGUAGES = [
{ label: "中文", value: "chinese" },
{ label: "英文", value: "english" },
{ label: "意大利语", value: "italian" },
{ label: "日语", value: "japanese" },
{ label: "韩语", value: "korean" },
{ label: "法语", value: "french" },
{ label: "德语", value: "german" },
{ label: "西班牙语", value: "spanish" },
{ label: "葡萄牙语", value: "portuguese" },
{ label: "俄语", value: "russian" },
{ label: "其他", value: "other" },
{ label: "chinese", value: "chinese" },
{ label: "english", value: "english" },
{ label: "italian", value: "italian" },
{ label: "japanese", value: "japanese" },
{ label: "korean", value: "korean" },
{ label: "french", value: "french" },
{ label: "german", value: "german" },
{ label: "spanish", value: "spanish" },
{ label: "portuguese", value: "portuguese" },
{ label: "russian", value: "russian" },
{ label: "other", value: "other" },
];
interface LocaleSelectorProps {
@@ -20,6 +21,7 @@ interface LocaleSelectorProps {
}
export function LocaleSelector({ value, onChange }: LocaleSelectorProps) {
const t = useTranslations();
const [customInput, setCustomInput] = useState("");
const isCommonLanguage = COMMON_LANGUAGES.some((l) => l.value === value && l.value !== "other");
const showCustomInput = value === "other" || !isCommonLanguage;
@@ -52,7 +54,7 @@ export function LocaleSelector({ value, onChange }: LocaleSelectorProps) {
>
{COMMON_LANGUAGES.map((lang) => (
<option key={lang.value} value={lang.value}>
{lang.label}
{t(`translator.${lang.label}`)}
</option>
))}
</select>
@@ -61,7 +63,7 @@ export function LocaleSelector({ value, onChange }: LocaleSelectorProps) {
type="text"
value={inputValue}
onChange={(e) => handleCustomInputChange(e.target.value)}
placeholder="请输入语言名称"
placeholder={t("folder_id.enterLanguageName")}
className="w-full px-3 py-2 border border-gray-300 rounded focus:outline-none focus:ring-2 focus:ring-[#35786f] mt-2"
/>
)}