"""
Internationalization (i18n) Module
Multilingual support - 59 languages
SAP ECC to S/4HANA Migration Tool
"""

LANGUAGES = {
    "en": "English",
    "ja": "日本語",
    "zh": "中文",
    "ko": "한국어",
    "es": "Español",
    "pt": "Português",
    "fr": "Français",
    "de": "Deutsch",
    "it": "Italiano",
    "ru": "Русский",
    "ar": "العربية",
    "hi": "हिन्दी",
    "th": "ไทย",
    "vi": "Tiếng Việt",
    "id": "Bahasa Indonesia",
    "ms": "Bahasa Melayu",
    "tr": "Türkçe",
    "pl": "Polski",
    "nl": "Nederlands",
    "sv": "Svenska",
    "da": "Dansk",
    "fi": "Suomi",
    "no": "Norsk",
    "cs": "Čeština",
    "hu": "Magyar",
    "ro": "Română",
    "el": "Ελληνικά",
    "he": "עברית",
    "uk": "Українська",
    "bn": "বাংলা",
    "tl": "Filipino",
    "sw": "Kiswahili",
    "bg": "Български",
    "hr": "Hrvatski",
    "sk": "Slovenčina",
    "sl": "Slovenščina",
    "sr": "Srpski",
    "lt": "Lietuvių",
    "lv": "Latviešu",
    "et": "Eesti",
    "fa": "فارسی",
    "ur": "اردو",
    "ta": "தமிழ்",
    "te": "తెలుగు",
    "mr": "मराठी",
    "gu": "ગુજરાતી",
    "kn": "ಕನ್ನಡ",
    "ml": "മലയാളം",
    "ne": "नेपाली",
    "si": "සිංහල",
    "my": "မြန်မာ",
    "km": "ខ្មែរ",
    "lo": "ລາວ",
    "ka": "ქართული",
    "am": "አማርኛ",
    "af": "Afrikaans",
    "ca": "Català",
    "eu": "Euskara",
    "gl": "Galego",
}

TRANSLATIONS = {
    "app_title": {
        "ja": "SAP ECC → S/4HANA マイグレーションツール v1.0",
        "en": "SAP ECC to S/4HANA Migration Tool v1.0",
        "zh": "SAP ECC 转 S/4HANA 迁移工具 v1.0",
        "ko": "SAP ECC → S/4HANA 마이그레이션 도구 v1.0",
        "es": "Herramienta de Migración SAP ECC a S/4HANA v1.0",
        "pt": "Ferramenta de Migração SAP ECC para S/4HANA v1.0",
        "fr": "Outil de Migration SAP ECC vers S/4HANA v1.0",
        "de": "SAP ECC-zu-S/4HANA-Migrationstool v1.0",
        "it": "Strumento di Migrazione SAP ECC a S/4HANA v1.0",
        "ru": "Инструмент миграции SAP ECC в S/4HANA v1.0",
        "ar": "أداة ترحيل SAP ECC إلى S/4HANA v1.0",
        "hi": "SAP ECC से S/4HANA माइग्रेशन टूल v1.0",
        "th": "เครื่องมือย้ายระบบ SAP ECC เป็น S/4HANA v1.0",
        "vi": "Công cụ chuyển đổi SAP ECC sang S/4HANA v1.0",
        "id": "Alat Migrasi SAP ECC ke S/4HANA v1.0",
        "ms": "Alat Migrasi SAP ECC ke S/4HANA v1.0",
        "tr": "SAP ECC'den S/4HANA'ya Geçiş Aracı v1.0",
        "pl": "Narzędzie migracji SAP ECC do S/4HANA v1.0",
        "nl": "SAP ECC naar S/4HANA Migratietool v1.0",
        "sv": "SAP ECC till S/4HANA Migreringsverktyg v1.0",
        "da": "SAP ECC til S/4HANA Migreringsværktøj v1.0",
        "fi": "SAP ECC-S/4HANA-migraatiotyökalu v1.0",
        "no": "SAP ECC til S/4HANA Migreringsverktøy v1.0",
        "cs": "Nástroj pro migraci SAP ECC do S/4HANA v1.0",
        "hu": "SAP ECC-S/4HANA migrációs eszköz v1.0",
        "ro": "Instrument de migrare SAP ECC la S/4HANA v1.0",
        "el": "Εργαλείο Μετάβασης SAP ECC σε S/4HANA v1.0",
        "he": "כלי מיגרציה מ-SAP ECC ל-S/4HANA v1.0",
        "uk": "Інструмент міграції SAP ECC до S/4HANA v1.0",
        "bn": "SAP ECC থেকে S/4HANA মাইগ্রেশন টুল v1.0",
        "tl": "Kasangkapan ng Paglipat SAP ECC sa S/4HANA v1.0",
        "sw": "Zana ya Uhamishaji SAP ECC hadi S/4HANA v1.0",
        "bg": "Инструмент за миграция от SAP ECC към S/4HANA v1.0",
        "hr": "Alat za migraciju SAP ECC u S/4HANA v1.0",
        "sk": "Nástroj na migráciu SAP ECC do S/4HANA v1.0",
        "sl": "Orodje za migracijo SAP ECC v S/4HANA v1.0",
        "sr": "Alat za migraciju SAP ECC u S/4HANA v1.0",
        "lt": "SAP ECC į S/4HANA migracijos įrankis v1.0",
        "lv": "SAP ECC uz S/4HANA migrācijas rīks v1.0",
        "et": "SAP ECC S/4HANA migratsiooni tööriist v1.0",
        "fa": "ابزار مهاجرت SAP ECC به S/4HANA v1.0",
        "ur": "SAP ECC سے S/4HANA منتقلی کا آلہ v1.0",
        "ta": "SAP ECC முதல் S/4HANA இடம்பெயர்வு கருவி v1.0",
        "te": "SAP ECC నుండి S/4HANA మైగ్రేషన్ సాధనం v1.0",
        "mr": "SAP ECC ते S/4HANA स्थलांतर साधन v1.0",
        "gu": "SAP ECC થી S/4HANA સ્થળાંતર સાધન v1.0",
        "kn": "SAP ECC ಇಂದ S/4HANA ವಲಸೆ ಸಾಧನ v1.0",
        "ml": "SAP ECC മുതൽ S/4HANA മൈഗ്രേഷൻ ടൂൾ v1.0",
        "ne": "SAP ECC देखि S/4HANA माइग्रेशन उपकरण v1.0",
        "si": "SAP ECC සිට S/4HANA සංක්‍රමණ මෙවලම v1.0",
        "my": "SAP ECC မှ S/4HANA ပြောင်းရွှေ့ခြင်း ကိရိယာ v1.0",
        "km": "ឧបករណ៍ផ្ទេរ SAP ECC ទៅ S/4HANA v1.0",
        "lo": "ເຄື່ອງມືໂອນ SAP ECC ເປັນ S/4HANA v1.0",
        "ka": "SAP ECC-დან S/4HANA-ზე მიგრაციის ინსტრუმენტი v1.0",
        "am": "SAP ECC ወደ S/4HANA ማዛወሪያ መሣሪያ v1.0",
        "af": "SAP ECC na S/4HANA Migrasie-instrument v1.0",
        "ca": "Eina de Migració SAP ECC a S/4HANA v1.0",
        "eu": "SAP ECC-tik S/4HANA-rako Migrazio Tresna v1.0",
        "gl": "Ferramenta de Migración SAP ECC a S/4HANA v1.0",
    },
    "app_heading": {
        "ja": "SAP ECC → S/4HANA マイグレーションツール",
        "en": "SAP ECC to S/4HANA Migration Tool",
        "zh": "SAP ECC 转 S/4HANA 迁移工具",
        "ko": "SAP ECC → S/4HANA 마이그레이션 도구",
        "es": "Herramienta de Migración SAP ECC a S/4HANA",
        "pt": "Ferramenta de Migração SAP ECC para S/4HANA",
        "fr": "Outil de Migration SAP ECC vers S/4HANA",
        "de": "SAP ECC-zu-S/4HANA-Migrationstool",
        "it": "Strumento di Migrazione SAP ECC a S/4HANA",
        "ru": "Инструмент миграции SAP ECC в S/4HANA",
        "ar": "أداة ترحيل SAP ECC إلى S/4HANA",
        "hi": "SAP ECC से S/4HANA माइग्रेशन टूल",
        "th": "เครื่องมือย้ายระบบ SAP ECC เป็น S/4HANA",
        "vi": "Công cụ chuyển đổi SAP ECC sang S/4HANA",
        "id": "Alat Migrasi SAP ECC ke S/4HANA",
        "tr": "SAP ECC'den S/4HANA'ya Geçiş Aracı",
        "pl": "Narzędzie migracji SAP ECC do S/4HANA",
        "nl": "SAP ECC naar S/4HANA Migratietool",
    },
    "language_label": {
        "ja": "言語:",
        "en": "Language:",
        "zh": "语言:",
        "ko": "언어:",
        "es": "Idioma:",
        "pt": "Idioma:",
        "fr": "Langue:",
        "de": "Sprache:",
        "it": "Lingua:",
        "ru": "Язык:",
        "ar": "اللغة:",
        "hi": "भाषा:",
        "th": "ภาษา:",
        "vi": "Ngôn ngữ:",
        "id": "Bahasa:",
        "tr": "Dil:",
        "pl": "Język:",
        "nl": "Taal:",
        "sv": "Språk:",
        "da": "Sprog:",
        "fi": "Kieli:",
        "no": "Språk:",
        "cs": "Jazyk:",
        "hu": "Nyelv:",
        "ro": "Limbă:",
        "el": "Γλώσσα:",
        "he": "שפה:",
        "uk": "Мова:",
        "bn": "ভাষা:",
        "tl": "Wika:",
        "sw": "Lugha:",
        "bg": "Език:",
        "hr": "Jezik:",
        "sk": "Jazyk:",
        "sl": "Jezik:",
        "sr": "Jezik:",
        "lt": "Kalba:",
        "lv": "Valoda:",
        "et": "Keel:",
        "fa": "زبان:",
        "ur": "زبان:",
        "ta": "மொழி:",
        "te": "భాష:",
        "mr": "भाषा:",
        "ka": "ენა:",
        "am": "ቋንቋ:",
        "af": "Taal:",
        "ca": "Idioma:",
    },
    "folders_frame": {
        "ja": " フォルダ設定 ",
        "en": " Folders ",
        "zh": " 文件夹设置 ",
        "ko": " 폴더 설정 ",
        "es": " Carpetas ",
        "pt": " Pastas ",
        "fr": " Dossiers ",
        "de": " Ordner ",
        "it": " Cartelle ",
        "ru": " Папки ",
        "ar": " المجلدات ",
        "hi": " फ़ोल्डर ",
        "th": " โฟลเดอร์ ",
        "vi": " Thư mục ",
        "id": " Folder ",
        "tr": " Klasörler ",
        "pl": " Foldery ",
        "nl": " Mappen ",
    },
    "input_folder_label": {
        "ja": "ABAP入力フォルダ:",
        "en": "ABAP Input Folder:",
        "zh": "ABAP 输入文件夹:",
        "ko": "ABAP 입력 폴더:",
        "es": "Carpeta de entrada ABAP:",
        "pt": "Pasta de entrada ABAP:",
        "fr": "Dossier source ABAP:",
        "de": "ABAP-Eingabeordner:",
        "it": "Cartella sorgente ABAP:",
        "ru": "Папка исходников ABAP:",
        "ar": "مجلد إدخال ABAP:",
        "hi": "ABAP इनपुट फ़ोल्डर:",
        "th": "โฟลเดอร์อินพุต ABAP:",
        "vi": "Thư mục nguồn ABAP:",
        "id": "Folder Input ABAP:",
        "tr": "ABAP Giriş Klasörü:",
        "pl": "Folder wejściowy ABAP:",
        "nl": "ABAP Invoermap:",
    },
    "output_folder_label": {
        "ja": "S/4HANA出力フォルダ:",
        "en": "S/4HANA Output Folder:",
        "zh": "S/4HANA 输出文件夹:",
        "ko": "S/4HANA 출력 폴더:",
        "es": "Carpeta de salida S/4HANA:",
        "pt": "Pasta de saída S/4HANA:",
        "fr": "Dossier de sortie S/4HANA:",
        "de": "S/4HANA-Ausgabeordner:",
        "it": "Cartella output S/4HANA:",
        "ru": "Папка вывода S/4HANA:",
        "ar": "مجلد إخراج S/4HANA:",
        "hi": "S/4HANA आउटपुट फ़ोल्डर:",
        "th": "โฟลเดอร์เอาต์พุต S/4HANA:",
        "vi": "Thư mục đầu ra S/4HANA:",
        "id": "Folder Output S/4HANA:",
        "tr": "S/4HANA Çıkış Klasörü:",
        "pl": "Folder wyjściowy S/4HANA:",
        "nl": "S/4HANA Uitvoermap:",
    },
    "browse_button": {
        "ja": "参照...",
        "en": "Browse...",
        "zh": "浏览...",
        "ko": "찾아보기...",
        "es": "Examinar...",
        "pt": "Procurar...",
        "fr": "Parcourir...",
        "de": "Durchsuchen...",
        "it": "Sfoglia...",
        "ru": "Обзор...",
        "ar": "تصفح...",
        "hi": "ब्राउज़...",
        "th": "เรียกดู...",
        "vi": "Duyệt...",
        "id": "Jelajahi...",
        "tr": "Gözat...",
        "pl": "Przeglądaj...",
        "nl": "Bladeren...",
        "sv": "Bläddra...",
        "da": "Gennemse...",
        "fi": "Selaa...",
        "no": "Bla gjennom...",
        "cs": "Procházet...",
        "hu": "Tallózás...",
        "ro": "Răsfoire...",
        "el": "Αναζήτηση...",
        "he": "עיון...",
        "uk": "Огляд...",
        "bg": "Преглед...",
        "hr": "Pregledaj...",
        "sk": "Prehľadávať...",
        "ka": "დათვალიერება...",
        "af": "Blaai...",
        "ca": "Navega...",
    },
    "browse_input_title": {
        "ja": "ABAPソースフォルダを選択",
        "en": "Select ABAP Source Folder",
        "zh": "选择 ABAP 源文件夹",
        "ko": "ABAP 소스 폴더 선택",
        "es": "Seleccionar carpeta fuente ABAP",
        "pt": "Selecionar pasta de origem ABAP",
        "fr": "Sélectionner le dossier source ABAP",
        "de": "ABAP-Quellordner auswählen",
        "it": "Seleziona cartella sorgente ABAP",
        "ru": "Выберите папку исходников ABAP",
    },
    "browse_output_title": {
        "ja": "S/4HANA出力フォルダを選択",
        "en": "Select S/4HANA Output Folder",
        "zh": "选择 S/4HANA 输出文件夹",
        "ko": "S/4HANA 출력 폴더 선택",
        "es": "Seleccionar carpeta de salida S/4HANA",
        "pt": "Selecionar pasta de saída S/4HANA",
        "fr": "Sélectionner le dossier de sortie S/4HANA",
        "de": "S/4HANA-Ausgabeordner auswählen",
        "it": "Seleziona cartella output S/4HANA",
        "ru": "Выберите папку вывода S/4HANA",
    },
    "options_frame": {
        "ja": " オプション ",
        "en": " Options ",
        "zh": " 选项 ",
        "ko": " 옵션 ",
        "es": " Opciones ",
        "pt": " Opções ",
        "fr": " Options ",
        "de": " Optionen ",
        "it": " Opzioni ",
        "ru": " Настройки ",
        "ar": " الخيارات ",
        "hi": " विकल्प ",
        "th": " ตัวเลือก ",
        "vi": " Tùy chọn ",
        "id": " Opsi ",
        "tr": " Seçenekler ",
        "pl": " Opcje ",
        "nl": " Opties ",
    },
    "source_version_label": {
        "ja": "ソースバージョン:",
        "en": "Source Version:",
        "zh": "源版本:",
        "ko": "소스 버전:",
        "es": "Versión de origen:",
        "pt": "Versão de origem:",
        "fr": "Version source:",
        "de": "Quellversion:",
        "it": "Versione sorgente:",
        "ru": "Исходная версия:",
        "ar": "إصدار المصدر:",
        "hi": "स्रोत संस्करण:",
        "th": "เวอร์ชันต้นทาง:",
        "vi": "Phiên bản nguồn:",
        "id": "Versi Sumber:",
        "tr": "Kaynak Sürümü:",
        "pl": "Wersja źródłowa:",
        "nl": "Bronversie:",
    },
    "target_version_label": {
        "ja": "ターゲットバージョン:",
        "en": "Target Version:",
        "zh": "目标版本:",
        "ko": "대상 버전:",
        "es": "Versión de destino:",
        "pt": "Versão de destino:",
        "fr": "Version cible:",
        "de": "Zielversion:",
        "it": "Versione destinazione:",
        "ru": "Целевая версия:",
        "ar": "الإصدار المستهدف:",
        "hi": "लक्ष्य संस्करण:",
        "th": "เวอร์ชันเป้าหมาย:",
        "vi": "Phiên bản đích:",
        "id": "Versi Target:",
        "tr": "Hedef Sürümü:",
        "pl": "Wersja docelowa:",
        "nl": "Doelversie:",
    },
    "encoding_label": {
        "ja": "ソースエンコーディング:",
        "en": "Source Encoding:",
        "zh": "源文件编码:",
        "ko": "소스 인코딩:",
        "es": "Codificación fuente:",
        "pt": "Codificação fonte:",
        "fr": "Encodage source:",
        "de": "Quellcodierung:",
        "it": "Codifica sorgente:",
        "ru": "Кодировка источника:",
    },
    "extensions_label": {
        "ja": "ファイル拡張子:",
        "en": "File Extensions:",
        "zh": "文件扩展名:",
        "ko": "파일 확장자:",
        "es": "Extensiones de archivo:",
        "pt": "Extensões de arquivo:",
        "fr": "Extensions de fichiers:",
        "de": "Dateierweiterungen:",
        "it": "Estensioni file:",
        "ru": "Расширения файлов:",
    },
    "module_filter_label": {
        "ja": "SAPモジュール:",
        "en": "SAP Module:",
        "zh": "SAP模块:",
        "ko": "SAP 모듈:",
        "es": "Módulo SAP:",
        "pt": "Módulo SAP:",
        "fr": "Module SAP:",
        "de": "SAP-Modul:",
        "it": "Modulo SAP:",
        "ru": "Модуль SAP:",
        "ar": "وحدة SAP:",
        "hi": "SAP मॉड्यूल:",
        "th": "โมดูล SAP:",
        "vi": "Module SAP:",
        "id": "Modul SAP:",
        "tr": "SAP Modülü:",
        "pl": "Moduł SAP:",
        "nl": "SAP Module:",
    },
    "report_format_label": {
        "ja": "レポート形式:",
        "en": "Report Format:",
        "zh": "报告格式:",
        "ko": "보고서 형식:",
        "es": "Formato de informe:",
        "pt": "Formato do relatório:",
        "fr": "Format du rapport:",
        "de": "Berichtsformat:",
        "it": "Formato report:",
        "ru": "Формат отчёта:",
        "ar": "تنسيق التقرير:",
        "hi": "रिपोर्ट प्रारूप:",
        "tr": "Rapor Formatı:",
        "pl": "Format raportu:",
        "nl": "Rapportformaat:",
    },
    "opt_modernize_syntax": {
        "ja": "ABAP構文をモダナイズ",
        "en": "Modernize ABAP Syntax",
        "zh": "现代化 ABAP 语法",
        "ko": "ABAP 구문 현대화",
        "es": "Modernizar sintaxis ABAP",
        "pt": "Modernizar sintaxe ABAP",
        "fr": "Moderniser la syntaxe ABAP",
        "de": "ABAP-Syntax modernisieren",
        "it": "Modernizza sintassi ABAP",
        "ru": "Модернизировать синтаксис ABAP",
        "ar": "تحديث بناء جملة ABAP",
        "hi": "ABAP सिंटैक्स आधुनिक बनाएं",
        "tr": "ABAP Sözdizimini Modernize Et",
        "pl": "Modernizuj składnię ABAP",
    },
    "opt_convert_tables": {
        "ja": "テーブル変換を適用",
        "en": "Convert Deprecated Tables",
        "zh": "转换已弃用表",
        "ko": "폐기된 테이블 변환",
        "es": "Convertir tablas obsoletas",
        "pt": "Converter tabelas obsoletas",
        "fr": "Convertir les tables obsolètes",
        "de": "Veraltete Tabellen konvertieren",
        "it": "Converti tabelle obsolete",
        "ru": "Конвертировать устаревшие таблицы",
        "ar": "تحويل الجداول المهملة",
        "hi": "पुरानी तालिकाओं को परिवर्तित करें",
        "tr": "Kullanımdan Kalkan Tabloları Dönüştür",
        "pl": "Konwertuj przestarzałe tabele",
    },
    "opt_convert_bapis": {
        "ja": "BAPI変換を適用",
        "en": "Convert Deprecated BAPIs",
        "zh": "转换已弃用 BAPI",
        "ko": "폐기된 BAPI 변환",
        "es": "Convertir BAPIs obsoletos",
        "pt": "Converter BAPIs obsoletos",
        "fr": "Convertir les BAPIs obsolètes",
        "de": "Veraltete BAPIs konvertieren",
        "it": "Converti BAPI obsoleti",
        "ru": "Конвертировать устаревшие BAPI",
        "ar": "تحويل واجهات BAPI المهملة",
        "hi": "पुराने BAPI को परिवर्तित करें",
        "tr": "Kullanımdan Kalkan BAPI'leri Dönüştür",
        "pl": "Konwertuj przestarzałe BAPI",
    },
    "opt_convert_fm": {
        "ja": "汎用モジュール変換を適用",
        "en": "Convert Function Modules",
        "zh": "转换功能模块",
        "ko": "기능 모듈 변환",
        "es": "Convertir módulos de funciones",
        "pt": "Converter módulos de função",
        "fr": "Convertir les modules de fonction",
        "de": "Funktionsbausteine konvertieren",
        "it": "Converti moduli funzione",
        "ru": "Конвертировать функциональные модули",
        "ar": "تحويل وحدات الوظائف",
        "hi": "फ़ंक्शन मॉड्यूल को परिवर्तित करें",
        "tr": "Fonksiyon Modüllerini Dönüştür",
        "pl": "Konwertuj moduły funkcyjne",
    },
    "opt_generate_report": {
        "ja": "影響分析レポートを生成",
        "en": "Generate Impact Analysis Report",
        "zh": "生成影响分析报告",
        "ko": "영향 분석 보고서 생성",
        "es": "Generar informe de análisis de impacto",
        "pt": "Gerar relatório de análise de impacto",
        "fr": "Générer le rapport d'analyse d'impact",
        "de": "Auswirkungsanalysebericht generieren",
        "it": "Genera report analisi impatto",
        "ru": "Генерировать отчёт об анализе воздействия",
        "ar": "إنشاء تقرير تحليل التأثير",
        "hi": "प्रभाव विश्लेषण रिपोर्ट जनरेट करें",
        "tr": "Etki Analizi Raporu Oluştur",
        "pl": "Generuj raport analizy wpływu",
    },
    "opt_add_comments": {
        "ja": "マイグレーションコメントを追加",
        "en": "Add Migration Comments",
        "zh": "添加迁移注释",
        "ko": "마이그레이션 주석 추가",
        "es": "Agregar comentarios de migración",
        "pt": "Adicionar comentários de migração",
        "fr": "Ajouter les commentaires de migration",
        "de": "Migrationskommentare hinzufügen",
        "it": "Aggiungi commenti di migrazione",
        "ru": "Добавить комментарии миграции",
        "ar": "إضافة تعليقات الترحيل",
        "hi": "माइग्रेशन टिप्पणियां जोड़ें",
        "tr": "Geçiş Yorumları Ekle",
        "pl": "Dodaj komentarze migracji",
    },
    "opt_backup_originals": {
        "ja": "元ファイルをバックアップ",
        "en": "Backup Original Files",
        "zh": "备份原始文件",
        "ko": "원본 파일 백업",
        "es": "Hacer copia de seguridad de originales",
        "pt": "Fazer backup dos originais",
        "fr": "Sauvegarder les fichiers originaux",
        "de": "Originaldateien sichern",
        "it": "Backup file originali",
        "ru": "Создать резервную копию оригиналов",
        "ar": "نسخ الملفات الأصلية احتياطياً",
        "hi": "मूल फ़ाइलों का बैकअप लें",
        "tr": "Orijinal Dosyaları Yedekle",
        "pl": "Utwórz kopię zapasową oryginałów",
    },
    "convert_button": {
        "ja": "変換実行",
        "en": "Convert",
        "zh": "开始转换",
        "ko": "변환 실행",
        "es": "Convertir",
        "pt": "Converter",
        "fr": "Convertir",
        "de": "Konvertieren",
        "it": "Converti",
        "ru": "Конвертировать",
        "ar": "تحويل",
        "hi": "रूपांतरित करें",
        "th": "แปลง",
        "vi": "Chuyển đổi",
        "id": "Konversi",
        "tr": "Dönüştür",
        "pl": "Konwertuj",
        "nl": "Converteren",
    },
    "cancel_button": {
        "ja": "キャンセル",
        "en": "Cancel",
        "zh": "取消",
        "ko": "취소",
        "es": "Cancelar",
        "pt": "Cancelar",
        "fr": "Annuler",
        "de": "Abbrechen",
        "it": "Annulla",
        "ru": "Отмена",
        "ar": "إلغاء",
        "hi": "रद्द करें",
        "th": "ยกเลิก",
        "vi": "Hủy",
        "id": "Batal",
        "tr": "İptal",
        "pl": "Anuluj",
        "nl": "Annuleren",
    },
    "clear_log_button": {
        "ja": "ログクリア",
        "en": "Clear Log",
        "zh": "清除日志",
        "ko": "로그 지우기",
        "es": "Limpiar registro",
        "pt": "Limpar log",
        "fr": "Effacer le journal",
        "de": "Protokoll löschen",
        "it": "Cancella log",
        "ru": "Очистить журнал",
        "ar": "مسح السجل",
        "hi": "लॉग साफ़ करें",
        "tr": "Günlüğü Temizle",
        "pl": "Wyczyść log",
    },
    "status_ready": {
        "ja": "準備完了",
        "en": "Ready",
        "zh": "就绪",
        "ko": "준비 완료",
        "es": "Listo",
        "pt": "Pronto",
        "fr": "Prêt",
        "de": "Bereit",
        "it": "Pronto",
        "ru": "Готово",
        "ar": "جاهز",
        "hi": "तैयार",
        "th": "พร้อม",
        "vi": "Sẵn sàng",
        "id": "Siap",
        "tr": "Hazır",
        "pl": "Gotowy",
        "nl": "Gereed",
    },
    "status_complete": {
        "ja": "完了",
        "en": "Complete",
        "zh": "完成",
        "ko": "완료",
        "es": "Completado",
        "pt": "Concluído",
        "fr": "Terminé",
        "de": "Abgeschlossen",
        "it": "Completato",
        "ru": "Завершено",
        "ar": "مكتمل",
        "hi": "पूर्ण",
        "th": "เสร็จสิ้น",
        "vi": "Hoàn tất",
        "id": "Selesai",
        "tr": "Tamamlandı",
        "pl": "Zakończono",
        "nl": "Voltooid",
    },
    "status_processing": {
        "ja": "処理中: {file}",
        "en": "Processing: {file}",
        "zh": "处理中: {file}",
        "ko": "처리 중: {file}",
        "es": "Procesando: {file}",
        "pt": "Processando: {file}",
        "fr": "Traitement: {file}",
        "de": "Verarbeitung: {file}",
        "it": "Elaborazione: {file}",
        "ru": "Обработка: {file}",
    },
    "log_frame": {
        "ja": " 変換ログ ",
        "en": " Conversion Log ",
        "zh": " 转换日志 ",
        "ko": " 변환 로그 ",
        "es": " Registro de conversión ",
        "pt": " Log de conversão ",
        "fr": " Journal de conversion ",
        "de": " Konvertierungsprotokoll ",
        "it": " Log di conversione ",
        "ru": " Журнал конвертации ",
    },
    "log_starting": {
        "ja": "SAP ECC → S/4HANA マイグレーション 開始",
        "en": "SAP ECC to S/4HANA Migration - Starting",
        "zh": "SAP ECC 转 S/4HANA 迁移 - 开始",
        "ko": "SAP ECC → S/4HANA 마이그레이션 - 시작",
        "es": "Migración SAP ECC a S/4HANA - Iniciando",
        "pt": "Migração SAP ECC para S/4HANA - Iniciando",
        "fr": "Migration SAP ECC vers S/4HANA - Démarrage",
        "de": "SAP ECC-zu-S/4HANA-Migration - Start",
        "it": "Migrazione SAP ECC a S/4HANA - Avvio",
        "ru": "Миграция SAP ECC в S/4HANA - Начало",
    },
    "log_input": {
        "ja": "入力:  {path}",
        "en": "Input:  {path}",
        "zh": "输入:  {path}",
        "ko": "입력:  {path}",
        "es": "Entrada:  {path}",
        "pt": "Entrada:  {path}",
        "fr": "Entrée:  {path}",
        "de": "Eingabe:  {path}",
        "it": "Input:  {path}",
        "ru": "Вход:  {path}",
    },
    "log_output": {
        "ja": "出力:  {path}",
        "en": "Output: {path}",
        "zh": "输出:  {path}",
        "ko": "출력:  {path}",
        "es": "Salida: {path}",
        "pt": "Saída:  {path}",
        "fr": "Sortie: {path}",
        "de": "Ausgabe: {path}",
        "it": "Output: {path}",
        "ru": "Выход: {path}",
    },
    "log_found_files": {
        "ja": "{count} 件のABAPファイルを検出",
        "en": "Found {count} ABAP file(s)",
        "zh": "找到 {count} 个 ABAP 文件",
        "ko": "ABAP 파일 {count}개 발견",
        "es": "{count} archivo(s) ABAP encontrado(s)",
        "pt": "{count} arquivo(s) ABAP encontrado(s)",
        "fr": "{count} fichier(s) ABAP trouvé(s)",
        "de": "{count} ABAP-Datei(en) gefunden",
        "it": "{count} file ABAP trovato/i",
        "ru": "Найдено {count} файл(ов) ABAP",
    },
    "log_no_files": {
        "ja": "ABAPファイルが見つかりません (拡張子: {ext})",
        "en": "No ABAP files found with extensions: {ext}",
        "zh": "未找到 ABAP 文件 (扩展名: {ext})",
        "ko": "ABAP 파일을 찾을 수 없습니다 (확장자: {ext})",
        "es": "No se encontraron archivos ABAP con extensiones: {ext}",
        "pt": "Nenhum arquivo ABAP encontrado com extensões: {ext}",
        "fr": "Aucun fichier ABAP trouvé avec les extensions: {ext}",
        "de": "Keine ABAP-Dateien mit Erweiterungen gefunden: {ext}",
        "it": "Nessun file ABAP trovato con estensioni: {ext}",
        "ru": "Файлы ABAP не найдены с расширениями: {ext}",
    },
    "log_source_version": {
        "ja": "ソースバージョン: {version}",
        "en": "Source version: {version}",
        "zh": "源版本: {version}",
        "ko": "소스 버전: {version}",
        "es": "Versión de origen: {version}",
        "pt": "Versão de origem: {version}",
        "fr": "Version source: {version}",
        "de": "Quellversion: {version}",
        "it": "Versione sorgente: {version}",
        "ru": "Исходная версия: {version}",
    },
    "log_target_version": {
        "ja": "ターゲットバージョン: {version}",
        "en": "Target version: {version}",
        "zh": "目标版本: {version}",
        "ko": "대상 버전: {version}",
        "es": "Versión de destino: {version}",
        "pt": "Versão de destino: {version}",
        "fr": "Version cible: {version}",
        "de": "Zielversion: {version}",
        "it": "Versione destinazione: {version}",
        "ru": "Целевая версия: {version}",
    },
    "log_module_filter": {
        "ja": "モジュールフィルタ: {modules}",
        "en": "Module filter: {modules}",
        "zh": "模块过滤器: {modules}",
        "ko": "모듈 필터: {modules}",
        "es": "Filtro de módulo: {modules}",
        "pt": "Filtro de módulo: {modules}",
        "fr": "Filtre de module: {modules}",
        "de": "Modulfilter: {modules}",
        "it": "Filtro modulo: {modules}",
        "ru": "Фильтр модулей: {modules}",
    },
    "log_processing": {
        "ja": "--- 処理中: {file} ---",
        "en": "--- Processing: {file} ---",
        "zh": "--- 处理中: {file} ---",
        "ko": "--- 처리 중: {file} ---",
        "es": "--- Procesando: {file} ---",
        "pt": "--- Processando: {file} ---",
        "fr": "--- Traitement: {file} ---",
        "de": "--- Verarbeitung: {file} ---",
        "it": "--- Elaborazione: {file} ---",
        "ru": "--- Обработка: {file} ---",
    },
    "log_parsing": {
        "ja": "  ABAPソースを解析中...",
        "en": "  Parsing ABAP source...",
        "zh": "  解析 ABAP 源代码...",
        "ko": "  ABAP 소스 분석 중...",
        "es": "  Analizando fuente ABAP...",
        "pt": "  Analisando fonte ABAP...",
        "fr": "  Analyse du source ABAP...",
        "de": "  ABAP-Quelle analysieren...",
        "it": "  Analisi sorgente ABAP...",
        "ru": "  Разбор исходного кода ABAP...",
    },
    "log_report_name": {
        "ja": "  レポート名: {name}",
        "en": "  Report name: {name}",
        "zh": "  报告名: {name}",
        "ko": "  리포트명: {name}",
        "es": "  Nombre del reporte: {name}",
        "pt": "  Nome do relatório: {name}",
        "fr": "  Nom du rapport: {name}",
        "de": "  Reportname: {name}",
        "it": "  Nome report: {name}",
        "ru": "  Имя отчёта: {name}",
    },
    "log_total_lines": {
        "ja": "  総行数: {count}",
        "en": "  Total lines: {count}",
        "zh": "  总行数: {count}",
        "ko": "  총 라인 수: {count}",
        "es": "  Líneas totales: {count}",
        "pt": "  Total de linhas: {count}",
        "fr": "  Lignes totales: {count}",
        "de": "  Gesamtzeilen: {count}",
        "it": "  Righe totali: {count}",
        "ru": "  Всего строк: {count}",
    },
    "log_tables_detected": {
        "ja": "  テーブル検出: {count} 個",
        "en": "  Tables detected: {count}",
        "zh": "  检测到表: {count} 个",
        "ko": "  테이블 감지: {count}개",
        "es": "  Tablas detectadas: {count}",
        "pt": "  Tabelas detectadas: {count}",
        "fr": "  Tables détectées: {count}",
        "de": "  Erkannte Tabellen: {count}",
        "it": "  Tabelle rilevate: {count}",
        "ru": "  Обнаружено таблиц: {count}",
    },
    "log_fm_detected": {
        "ja": "  汎用モジュール検出: {count} 個",
        "en": "  Function modules detected: {count}",
        "zh": "  检测到功能模块: {count} 个",
        "ko": "  기능 모듈 감지: {count}개",
        "es": "  Módulos de funciones detectados: {count}",
        "pt": "  Módulos de função detectados: {count}",
        "fr": "  Modules de fonction détectés: {count}",
        "de": "  Erkannte Funktionsbausteine: {count}",
        "it": "  Moduli funzione rilevati: {count}",
        "ru": "  Обнаружено функциональных модулей: {count}",
    },
    "log_bapis_detected": {
        "ja": "  BAPI検出: {count} 個",
        "en": "  BAPIs detected: {count}",
        "zh": "  检测到 BAPI: {count} 个",
        "ko": "  BAPI 감지: {count}개",
        "es": "  BAPIs detectados: {count}",
        "pt": "  BAPIs detectados: {count}",
        "fr": "  BAPIs détectés: {count}",
        "de": "  Erkannte BAPIs: {count}",
        "it": "  BAPI rilevati: {count}",
        "ru": "  Обнаружено BAPI: {count}",
    },
    "log_exec_sql": {
        "ja": "  EXEC SQLブロックを検出",
        "en": "  EXEC SQL block detected",
        "zh": "  检测到 EXEC SQL 块",
        "ko": "  EXEC SQL 블록 감지됨",
        "es": "  Bloque EXEC SQL detectado",
        "pt": "  Bloco EXEC SQL detectado",
        "fr": "  Bloc EXEC SQL détecté",
        "de": "  EXEC-SQL-Block erkannt",
        "it": "  Blocco EXEC SQL rilevato",
        "ru": "  Обнаружен блок EXEC SQL",
    },
    "log_transforming": {
        "ja": "  S/4HANA変換を適用中...",
        "en": "  Applying S/4HANA transformations...",
        "zh": "  应用 S/4HANA 转换...",
        "ko": "  S/4HANA 변환 적용 중...",
        "es": "  Aplicando transformaciones S/4HANA...",
        "pt": "  Aplicando transformações S/4HANA...",
        "fr": "  Application des transformations S/4HANA...",
        "de": "  S/4HANA-Transformationen anwenden...",
        "it": "  Applicazione trasformazioni S/4HANA...",
        "ru": "  Применение S/4HANA-трансформаций...",
    },
    "log_changes_auto": {
        "ja": "  自動変換: {count} 件",
        "en": "  Auto-converted: {count}",
        "zh": "  自动转换: {count} 项",
        "ko": "  자동 변환: {count}건",
        "es": "  Convertidos automáticamente: {count}",
        "pt": "  Convertidos automaticamente: {count}",
        "fr": "  Conversion automatique: {count}",
        "de": "  Automatisch konvertiert: {count}",
        "it": "  Conversione automatica: {count}",
        "ru": "  Автоматически конвертировано: {count}",
    },
    "log_changes_review": {
        "ja": "  要レビュー: {count} 件",
        "en": "  Needs review: {count}",
        "zh": "  需要审查: {count} 项",
        "ko": "  검토 필요: {count}건",
        "es": "  Necesitan revisión: {count}",
        "pt": "  Precisa revisão: {count}",
        "fr": "  À revoir: {count}",
        "de": "  Überprüfung erforderlich: {count}",
        "it": "  Da rivedere: {count}",
        "ru": "  Требует проверки: {count}",
    },
    "log_changes_manual": {
        "ja": "  手動対応: {count} 件",
        "en": "  Manual only: {count}",
        "zh": "  需手动处理: {count} 项",
        "ko": "  수동 처리: {count}건",
        "es": "  Solo manual: {count}",
        "pt": "  Apenas manual: {count}",
        "fr": "  Manuel uniquement: {count}",
        "de": "  Nur manuell: {count}",
        "it": "  Solo manuale: {count}",
        "ru": "  Только вручную: {count}",
    },
    "log_generating": {
        "ja": "  S/4HANA ABAPコードを生成中...",
        "en": "  Generating S/4HANA ABAP code...",
        "zh": "  生成 S/4HANA ABAP 代码...",
        "ko": "  S/4HANA ABAP 코드 생성 중...",
        "es": "  Generando código ABAP S/4HANA...",
        "pt": "  Gerando código ABAP S/4HANA...",
        "fr": "  Génération du code ABAP S/4HANA...",
        "de": "  S/4HANA-ABAP-Code generieren...",
        "it": "  Generazione codice ABAP S/4HANA...",
        "ru": "  Генерация кода ABAP S/4HANA...",
    },
    "log_backup_created": {
        "ja": "  バックアップ作成: {path}",
        "en": "  Backup created: {path}",
        "zh": "  已创建备份: {path}",
        "ko": "  백업 생성: {path}",
        "es": "  Copia de seguridad creada: {path}",
        "pt": "  Backup criado: {path}",
        "fr": "  Sauvegarde créée: {path}",
        "de": "  Backup erstellt: {path}",
        "it": "  Backup creato: {path}",
        "ru": "  Резервная копия создана: {path}",
    },
    "log_file_complete": {
        "ja": "  完了: {file}",
        "en": "  Complete: {file}",
        "zh": "  完成: {file}",
        "ko": "  완료: {file}",
        "es": "  Completado: {file}",
        "pt": "  Concluído: {file}",
        "fr": "  Terminé: {file}",
        "de": "  Abgeschlossen: {file}",
        "it": "  Completato: {file}",
        "ru": "  Завершено: {file}",
    },
    "log_generating_report": {
        "ja": "影響分析レポートを生成中...",
        "en": "Generating impact analysis report...",
        "zh": "正在生成影响分析报告...",
        "ko": "영향 분석 보고서 생성 중...",
        "es": "Generando informe de análisis de impacto...",
        "pt": "Gerando relatório de análise de impacto...",
        "fr": "Génération du rapport d'analyse d'impact...",
        "de": "Auswirkungsanalysebericht generieren...",
        "it": "Generazione report analisi impatto...",
        "ru": "Генерация отчёта об анализе воздействия...",
    },
    "log_report_saved": {
        "ja": "レポート保存先: {path}",
        "en": "Report saved to: {path}",
        "zh": "报告已保存到: {path}",
        "ko": "보고서 저장 위치: {path}",
        "es": "Informe guardado en: {path}",
        "pt": "Relatório salvo em: {path}",
        "fr": "Rapport enregistré dans: {path}",
        "de": "Bericht gespeichert unter: {path}",
        "it": "Report salvato in: {path}",
        "ru": "Отчёт сохранён в: {path}",
    },
    "log_migration_complete": {
        "ja": "マイグレーション完了",
        "en": "Migration Complete",
        "zh": "迁移完成",
        "ko": "마이그레이션 완료",
        "es": "Migración completada",
        "pt": "Migração concluída",
        "fr": "Migration terminée",
        "de": "Migration abgeschlossen",
        "it": "Migrazione completata",
        "ru": "Миграция завершена",
    },
    "log_success": {
        "ja": "  成功: {count} ファイル",
        "en": "  Success: {count} file(s)",
        "zh": "  成功: {count} 个文件",
        "ko": "  성공: {count}개 파일",
        "es": "  Éxito: {count} archivo(s)",
        "pt": "  Sucesso: {count} arquivo(s)",
        "fr": "  Succès: {count} fichier(s)",
        "de": "  Erfolg: {count} Datei(en)",
        "it": "  Successo: {count} file",
        "ru": "  Успешно: {count} файл(ов)",
    },
    "log_errors": {
        "ja": "  エラー: {count} ファイル",
        "en": "  Errors:  {count} file(s)",
        "zh": "  错误: {count} 个文件",
        "ko": "  오류: {count}개 파일",
        "es": "  Errores: {count} archivo(s)",
        "pt": "  Erros:   {count} arquivo(s)",
        "fr": "  Erreurs: {count} fichier(s)",
        "de": "  Fehler:  {count} Datei(en)",
        "it": "  Errori:  {count} file",
        "ru": "  Ошибки:  {count} файл(ов)",
    },
    "log_summary_auto": {
        "ja": "  自動変換合計: {count} 件",
        "en": "  Total auto-converted: {count}",
        "zh": "  自动转换总计: {count} 项",
        "ko": "  자동 변환 합계: {count}건",
        "es": "  Total convertidos automáticamente: {count}",
        "pt": "  Total convertidos automaticamente: {count}",
        "fr": "  Total conversion automatique: {count}",
        "de": "  Gesamt automatisch konvertiert: {count}",
        "it": "  Totale conversione automatica: {count}",
        "ru": "  Всего автоматически конвертировано: {count}",
    },
    "log_summary_review": {
        "ja": "  要レビュー合計: {count} 件",
        "en": "  Total needs review: {count}",
        "zh": "  需审查总计: {count} 项",
        "ko": "  검토 필요 합계: {count}건",
        "es": "  Total necesitan revisión: {count}",
        "pt": "  Total precisa revisão: {count}",
        "fr": "  Total à revoir: {count}",
        "de": "  Gesamt Überprüfung erforderlich: {count}",
        "it": "  Totale da rivedere: {count}",
        "ru": "  Всего требует проверки: {count}",
    },
    "log_summary_manual": {
        "ja": "  手動対応合計: {count} 件",
        "en": "  Total manual only: {count}",
        "zh": "  需手动处理总计: {count} 项",
        "ko": "  수동 처리 합계: {count}건",
        "es": "  Total solo manual: {count}",
        "pt": "  Total apenas manual: {count}",
        "fr": "  Total manuel uniquement: {count}",
        "de": "  Gesamt nur manuell: {count}",
        "it": "  Totale solo manuale: {count}",
        "ru": "  Всего только вручную: {count}",
    },
    "log_cancelled": {
        "ja": "ユーザーにより変換がキャンセルされました。",
        "en": "Conversion cancelled by user.",
        "zh": "用户取消了转换。",
        "ko": "사용자가 변환을 취소했습니다.",
        "es": "Conversión cancelada por el usuario.",
        "pt": "Conversão cancelada pelo usuário.",
        "fr": "Conversion annulée par l'utilisateur.",
        "de": "Konvertierung vom Benutzer abgebrochen.",
        "it": "Conversione annullata dall'utente.",
        "ru": "Конвертация отменена пользователем.",
    },
    "log_cancel_request": {
        "ja": "キャンセルをリクエスト中...",
        "en": "Cancellation requested...",
        "zh": "正在请求取消...",
        "ko": "취소 요청 중...",
        "es": "Cancelación solicitada...",
        "pt": "Cancelamento solicitado...",
        "fr": "Annulation demandée...",
        "de": "Abbruch angefordert...",
        "it": "Annullamento richiesto...",
        "ru": "Запрос на отмену...",
    },
    "warn_title": {
        "ja": "警告",
        "en": "Warning",
        "zh": "警告",
        "ko": "경고",
        "es": "Advertencia",
        "pt": "Aviso",
        "fr": "Avertissement",
        "de": "Warnung",
        "it": "Avviso",
        "ru": "Предупреждение",
        "ar": "تحذير",
        "hi": "चेतावनी",
        "th": "คำเตือน",
        "vi": "Cảnh báo",
        "id": "Peringatan",
        "tr": "Uyarı",
        "pl": "Ostrzeżenie",
        "nl": "Waarschuwing",
    },
    "error_title": {
        "ja": "エラー",
        "en": "Error",
        "zh": "错误",
        "ko": "오류",
        "es": "Error",
        "pt": "Erro",
        "fr": "Erreur",
        "de": "Fehler",
        "it": "Errore",
        "ru": "Ошибка",
        "ar": "خطأ",
        "hi": "त्रुटि",
        "th": "ข้อผิดพลาด",
        "vi": "Lỗi",
        "id": "Kesalahan",
        "tr": "Hata",
        "pl": "Błąd",
        "nl": "Fout",
    },
    "warn_no_input": {
        "ja": "ABAP入力フォルダを選択してください。",
        "en": "Please select an ABAP input folder.",
        "zh": "请选择 ABAP 输入文件夹。",
        "ko": "ABAP 입력 폴더를 선택하세요.",
        "es": "Seleccione una carpeta de entrada ABAP.",
        "pt": "Selecione uma pasta de entrada ABAP.",
        "fr": "Veuillez sélectionner un dossier source ABAP.",
        "de": "Bitte wählen Sie einen ABAP-Eingabeordner.",
        "it": "Seleziona una cartella sorgente ABAP.",
        "ru": "Выберите папку исходников ABAP.",
    },
    "warn_no_output": {
        "ja": "S/4HANA出力フォルダを選択してください。",
        "en": "Please select an S/4HANA output folder.",
        "zh": "请选择 S/4HANA 输出文件夹。",
        "ko": "S/4HANA 출력 폴더를 선택하세요.",
        "es": "Seleccione una carpeta de salida S/4HANA.",
        "pt": "Selecione uma pasta de saída S/4HANA.",
        "fr": "Veuillez sélectionner un dossier de sortie S/4HANA.",
        "de": "Bitte wählen Sie einen S/4HANA-Ausgabeordner.",
        "it": "Seleziona una cartella output S/4HANA.",
        "ru": "Выберите папку вывода S/4HANA.",
    },
    "error_no_input_dir": {
        "ja": "入力フォルダが存在しません:\n{path}",
        "en": "Input folder does not exist:\n{path}",
        "zh": "输入文件夹不存在:\n{path}",
        "ko": "입력 폴더가 존재하지 않습니다:\n{path}",
        "es": "La carpeta de entrada no existe:\n{path}",
        "pt": "A pasta de entrada não existe:\n{path}",
        "fr": "Le dossier source n'existe pas:\n{path}",
        "de": "Eingabeordner existiert nicht:\n{path}",
    },
}


class I18n:
    """Internationalization helper class."""

    def __init__(self, lang: str = "en"):
        self._lang = lang if lang in LANGUAGES else "en"

    @property
    def lang(self) -> str:
        return self._lang

    @lang.setter
    def lang(self, value: str):
        if value in LANGUAGES:
            self._lang = value

    def t(self, key: str, **kwargs) -> str:
        """Get translated string for the current language.

        Args:
            key: Translation key
            **kwargs: Format parameters (e.g. count=5, file="test.abap")

        Returns:
            Translated and formatted string
        """
        entry = TRANSLATIONS.get(key)
        if entry is None:
            return f"[{key}]"

        text = entry.get(self._lang) or entry.get("en", f"[{key}]")

        if kwargs:
            try:
                text = text.format(**kwargs)
            except (KeyError, IndexError):
                pass

        return text

    @staticmethod
    def available_languages() -> dict:
        """Return dict of {code: display_name}."""
        return dict(LANGUAGES)
