Spaces:
Paused
Paused
| # src/utils/ui_trans.py | |
| UI_TRANSLATIONS = { | |
| "english": { | |
| "verified": "VERIFIED:", | |
| "global": "[GLOBAL]", | |
| "who_affected": "👥 Who is Affected", | |
| "why_matters": "⚡ Why It Matters", | |
| "ai_analysis": "AI Analysis", | |
| "just_now": "Just Now", | |
| "brief_title": "⭐ 60-Second Brief", | |
| "see_more": "See More", | |
| "see_more_briefs": "See More Briefs", | |
| "top_headlines": "Top Headlines", | |
| "breaking_news": "Breaking News", | |
| "live_updates": "LIVE UPDATES", | |
| "system_init": "System Initializing...", | |
| "gathering_intel": "Gathering intelligence from global nodes. Please wait for the next cycle.", | |
| "global_system_init": "⚙️ Global System Initializing", | |
| "status": "Status:", | |
| "syncing": "Syncing...", | |
| "ai_engine_sync": "The AI Intelligence engine is performing its first major sync with world news sources. This node will be active within 5-10 minutes.", | |
| "node_backup_active": "📡 Node Intelligence Backup Active", | |
| "regional_gathering": "Regional news for this specific node is currently gathering. Displaying **Global Intelligence** as a temporary backup.", | |
| "try_sync_node": "Try Sync Node", | |
| "main_dashboard": "Main Dashboard", | |
| "trending_feed": "Trending Feed", | |
| "viral": "VIRAL", | |
| "no_trending": "No specific trending data currently available.", | |
| "todays_newspapers": "Today's Newspapers", | |
| "regional_publications": "Regional Publications", | |
| "universal_news": "UNIVERSAL NEWS INTELLIGENCE", | |
| "update_cycle": "⚡ 15-Minute Update Cycle", | |
| "last_updated": "Last Updated:", | |
| "ai_generated": "AI-generated summaries. Verify with original sources.", | |
| "all_rights": "All rights reserved.", | |
| "markets": "MARKETS", | |
| "live_report": "LIVE REPORT", | |
| "confirmed": "Confirmed", | |
| "breaking_feed": "BREAKING FEED", | |
| "global_intel_node": "Global Intelligence Node", | |
| "regional_intel_feed": "Regional intelligence feed for", | |
| "curated_intel": "Curated intelligence:", | |
| "categories": "Categories", | |
| "global_nodes": "Global Nodes", | |
| "saved_items": "Saved Items", | |
| "mock_test": "Mock Test", | |
| "history": "History", | |
| "analyst_reports": "Analyst Reports", | |
| "intelligence_report": "Intelligence Report", | |
| "verified_source": "VERIFIED SOURCE", | |
| "neutral": "Neutral", | |
| "exec_summary": "📌 Executive Summary", | |
| "analyzing_demo": "Analyzing demographic impact...", | |
| "evaluating_strat": "Evaluating strategic significance...", | |
| "intel_tags": "INTEL TAGS", | |
| "save_for_later": "🔖 Save For Later", | |
| "visit_source": "🌐 VISIT ORIGINAL SOURCE" | |
| }, | |
| "telugu": { | |
| "verified": "ధృవీకరించబడింది:", | |
| "global": "[గ్లోబల్]", | |
| "who_affected": "👥 ఎవరు ప్రభావితమవుతారు", | |
| "why_matters": "⚡ ఎందుకు ముఖ్యమైనది", | |
| "ai_analysis": "AI విశ్లేషణ", | |
| "just_now": "ఇప్పుడే", | |
| "brief_title": "⭐ 60-సెకన్ల సంక్షిప్త సమాచారం", | |
| "see_more": "మరింత చూడండి", | |
| "see_more_briefs": "మరిన్ని బ్రీఫ్లు చూడండి", | |
| "top_headlines": "ముఖ్య వార్తలు", | |
| "breaking_news": "బ్రేకింగ్ న్యూస్", | |
| "live_updates": "లైవ్ అప్డేట్స్", | |
| "system_init": "సిస్టమ్ ప్రారంభమవుతోంది...", | |
| "gathering_intel": "గ్లోబల్ నోడ్స్ నుండి సమాచారం సేకరిస్తోంది...", | |
| "global_system_init": "⚙️ గ్లోబల్ సిస్టమ్ సింక్ అవుతోంది", | |
| "status": "స్థితి:", | |
| "syncing": "సింక్ అవుతోంది...", | |
| "ai_engine_sync": "AI ఇంజిన్ మొదట ప్రపంచ వార్తా వనరులతో సమకాలీకరిస్తోంది. 5-10 నిమిషాల్లో ఈ నోడ్ యాక్టివ్ అవుతుంది.", | |
| "node_backup_active": "📡 నోడ్ బ్యాకప్ యాక్టివ్", | |
| "regional_gathering": "ప్రాంతీయ వార్తలు సేకరిస్తున్నాము. తాత్కాలికంగా గ్లోబల్ ఇంజెలిజెన్స్ చూపుతున్నాము.", | |
| "try_sync_node": "మళ్లీ సింక్ చేయండి", | |
| "main_dashboard": "ప్రధాన డాష్బోర్డ్", | |
| "trending_feed": "ట్రెండింగ్ న్యూస్", | |
| "viral": "వైరల్", | |
| "no_trending": "ప్రస్తుతం ట్రెండింగ్ సమాచారం అందుబాటులో లేదు.", | |
| "todays_newspapers": "నేటి వార్తాపత్రికలు", | |
| "regional_publications": "ప్రాంతీయ ప్రచురణలు", | |
| "universal_news": "యూనివర్సల్ న్యూస్ ఇంటెలిజెన్స్", | |
| "update_cycle": "⚡ 15-నిమిషాల అప్డేట్", | |
| "last_updated": "చివరి అప్డేట్:", | |
| "ai_generated": "AI-సృష్టించిన సారాంశాలు. ఒరిజినల్ సోర్స్లతో ధృవీకరించుకోండి.", | |
| "all_rights": "సర్వ హక్కులూ ప్రత్యేకించబడినవి.", | |
| "markets": "మార్కెట్లు", | |
| "live_report": "లైవ్ రిపోర్ట్", | |
| "confirmed": "నిర్ధారించబడింది", | |
| "breaking_feed": "బ్రేకింగ్ ఫీడ్", | |
| "global_intel_node": "గ్లోబల్ నోడ్", | |
| "regional_intel_feed": "ప్రాంతీయ ఫీడ్: ", | |
| "curated_intel": "క్యూరేటెడ్ వార్తలు:", | |
| "categories": "వర్గాలు", | |
| "global_nodes": "గ్లోబల్ నోడ్స్", | |
| "saved_items": "సేవ్ చేయబడినవి", | |
| "mock_test": "మాక్ టెస్ట్", | |
| "history": "చరిత్ర", | |
| "analyst_reports": "అనలిస్ట్ రిపోర్ట్స్", | |
| "intelligence_report": "ఇంటెలిజెన్స్ రిపోర్ట్", | |
| "verified_source": "నమ్మకమైన వనరు", | |
| "neutral": "తటస్థం", | |
| "exec_summary": "📌 సారాంశం", | |
| "analyzing_demo": "ప్రభావం విశ్లేషించబడుతోంది...", | |
| "evaluating_strat": "ప్రాముఖ్యత మదింపు చేయబడుతోంది...", | |
| "intel_tags": "ట్యాగ్స్", | |
| "save_for_later": "🔖 సేవ్ చేయండి", | |
| "visit_source": "🌐 అసలు మూలాన్ని సందర్శించండి" | |
| }, | |
| "hindi": { | |
| "verified": "सत्यापित:", | |
| "global": "[वैश्विक]", | |
| "who_affected": "👥 कौन प्रभावित है", | |
| "why_matters": "⚡ यह क्यों मायने रखता है", | |
| "ai_analysis": "AI विश्लेषण", | |
| "just_now": "अभी-अभी", | |
| "brief_title": "⭐ 60-सेकंड की जानकारी", | |
| "see_more": "और देखें", | |
| "see_more_briefs": "और जानकारी देखें", | |
| "top_headlines": "मुख्य समाचार", | |
| "breaking_news": "ब्रेकिंग न्यूज़", | |
| "live_updates": "लाइव अपडेट्स", | |
| "system_init": "सिस्टम प्रारंभ हो रहा है...", | |
| "gathering_intel": "जानकारी एकत्र की जा रही है...", | |
| "global_system_init": "⚙️ ग्लोबल सिस्टम सिंक हो रहा है", | |
| "status": "स्थिति:", | |
| "syncing": "सिंक हो रहा है...", | |
| "ai_engine_sync": "AI इंजन दुनिया भर के समाचारों के साथ सिंक कर रहा है। 5-10 मिनट प्रतीक्षा करें।", | |
| "node_backup_active": "📡 बैकअप सक्रिय है", | |
| "regional_gathering": "क्षेत्रीय समाचार एकत्र किए जा रहे हैं। अस्थायी रूप से वैश्विक समाचार दिखाए जा रहे हैं।", | |
| "try_sync_node": "फिर से सिंक करें", | |
| "main_dashboard": "मुख्य डैशबोर्ड", | |
| "trending_feed": "ट्रेंडिंग न्यूज़", | |
| "viral": "वायरल", | |
| "no_trending": "कोई ट्रेंडिंग डेटा उपलब्ध नहीं है।", | |
| "todays_newspapers": "आज के समाचार पत्र", | |
| "regional_publications": "क्षेत्रीय प्रकाशन", | |
| "universal_news": "यूनिवर्सल न्यूज़ इंटेलिजेंस", | |
| "update_cycle": "⚡ 15 मिनट का अपडेट साइकल", | |
| "last_updated": "अंतिम अपडेट:", | |
| "ai_generated": "AI जनरेटेड सारांश। मूल स्रोतों से पुष्टि करें।", | |
| "all_rights": "सर्वाधिकार सुरक्षित।", | |
| "markets": "बाज़ार", | |
| "live_report": "लाइव रिपोर्ट", | |
| "confirmed": "पुष्टि हो चुकी है", | |
| "breaking_feed": "ब्रेकिंग फ़ीड", | |
| "global_intel_node": "ग्लोबल नोड", | |
| "regional_intel_feed": "क्षेत्रीय फ़ीड: ", | |
| "curated_intel": "विशेष समाचार:", | |
| "categories": "श्रेणियां", | |
| "global_nodes": "ग्लोबल नोड्स", | |
| "saved_items": "सेव किए गए आइटम", | |
| "mock_test": "मॉक टेस्ट", | |
| "history": "इतिहास", | |
| "analyst_reports": "एनालिस्ट रिपोर्ट्स", | |
| "intelligence_report": "इंटेलिजेंस रिपोर्ट", | |
| "verified_source": "सत्यापित स्रोत", | |
| "neutral": "तटस्थ", | |
| "exec_summary": "📌 सारांश", | |
| "analyzing_demo": "प्रभाव का विश्लेषण किया जा रहा है...", | |
| "evaluating_strat": "रणनीतिक महत्व का मूल्यांकन...", | |
| "intel_tags": "टैग्स", | |
| "save_for_later": "🔖 सेव करें", | |
| "visit_source": "🌐 मूल स्रोत पर जाएं" | |
| }, | |
| "spanish": { | |
| "verified": "VERIFICADO:", | |
| "global": "[GLOBAL]", | |
| "who_affected": "👥 Quiénes se ven afectados", | |
| "why_matters": "⚡ Por qué es importante", | |
| "ai_analysis": "Análisis de IA", | |
| "just_now": "Ahora", | |
| "brief_title": "⭐ Resumen de 60 Segundos", | |
| "see_more": "Ver Más", | |
| "see_more_briefs": "Ver Más Resúmenes", | |
| "top_headlines": "Titulares Principales", | |
| "breaking_news": "Noticias de Última Hora", | |
| "live_updates": "ACTUALIZACIONES EN VIVO", | |
| "system_init": "Inicializando...", | |
| "gathering_intel": "Recopilando inteligencia... ", | |
| "global_system_init": "⚙️ Sincronización Global de Sistemas", | |
| "status": "Estado:", | |
| "syncing": "Sincronizando...", | |
| "ai_engine_sync": "El motor de inteligencia está realizando su primera sincronización importante.", | |
| "node_backup_active": "📡 Inteligencia Global de Respaldo", | |
| "regional_gathering": "Buscando noticias regionales. Mostrando noticias globales como respaldo...", | |
| "try_sync_node": "Sincronizar", | |
| "main_dashboard": "Panel Principal", | |
| "trending_feed": "Tendencias", | |
| "viral": "VIRAL", | |
| "no_trending": "Sin datos de tendencias en este momento.", | |
| "todays_newspapers": "Periódicos de Hoy", | |
| "regional_publications": "Publicaciones Regionales", | |
| "universal_news": "INTELIGENCIA DE NOTICIAS UNIVERSAL", | |
| "update_cycle": "⚡ Ciclo de actualización de 15 min", | |
| "last_updated": "Última actualización:", | |
| "ai_generated": "Resúmenes generados por IA. Verifique con fuentes originales.", | |
| "all_rights": "Todos los derechos reservados.", | |
| "markets": "MERCADOS", | |
| "live_report": "REPORTE EN VIVO", | |
| "confirmed": "Confirmado", | |
| "breaking_feed": "FEED DE ÚLTIMA HORA", | |
| "global_intel_node": "Nodo de Inteligencia Global", | |
| "regional_intel_feed": "Inteligencia regional para:", | |
| "curated_intel": "Inteligencia curada:", | |
| "categories": "Categorías", | |
| "global_nodes": "Nodos Globales", | |
| "saved_items": "Guardado", | |
| "mock_test": "Prueba", | |
| "history": "Historial", | |
| "analyst_reports": "Informes Analíticos", | |
| "intelligence_report": "Reporte de Inteligencia", | |
| "verified_source": "FUENTE VERIFICADA", | |
| "neutral": "Neutral", | |
| "exec_summary": "📌 Resumen Ejecutivo", | |
| "analyzing_demo": "Analizando impacto...", | |
| "evaluating_strat": "Evaluando el significado...", | |
| "intel_tags": "ETIQUETAS INTEL", | |
| "save_for_later": "🔖 Guardar para más tarde", | |
| "visit_source": "🌐 VISITAR FUENTE ORIGINAL" | |
| }, | |
| "arabic": { | |
| "verified": "تم التحقق منه:", | |
| "global": "[عالمي]", | |
| "who_affected": "👥 من المتأثر؟", | |
| "why_matters": "⚡ لماذا هذا مهم؟", | |
| "ai_analysis": "تحليل الذكاء الاصطناعي", | |
| "just_now": "الآن", | |
| "brief_title": "⭐ موجز بـ 60 ثانية", | |
| "see_more": "رؤية المزيد", | |
| "see_more_briefs": "رؤية المزيد من الموجز", | |
| "top_headlines": "أهم العناوين", | |
| "breaking_news": "أخبار عاجلة", | |
| "live_updates": "تحديثات مباشرة", | |
| "system_init": "جارٍ تهيئة النظام...", | |
| "gathering_intel": "تجميع البيانات...", | |
| "global_system_init": "⚙️ المزامنة العالمية مستمرة", | |
| "status": "الحالة:", | |
| "syncing": "مزامنة...", | |
| "ai_engine_sync": "الذكاء الاصطناعي يزامن الآن. يرجى الانتظار...", | |
| "node_backup_active": "📡 مزامنة احتياطية تعمل", | |
| "regional_gathering": "جاري جمع الأخبار الإقليمية. الاستعانة بالعالمية حاليا.", | |
| "try_sync_node": "إعادة المزامنة", | |
| "main_dashboard": "اللوحة الرئيسية", | |
| "trending_feed": "الأخبار الشائعة", | |
| "viral": "شائع جداً", | |
| "no_trending": "لا توجد أخبار حاليا.", | |
| "todays_newspapers": "صحف اليوم", | |
| "regional_publications": "الصحف المحلية", | |
| "universal_news": "يونيفرسال نيوز", | |
| "update_cycle": "⚡ تحديث دوري (15 دقيقة)", | |
| "last_updated": "آخر تحديث:", | |
| "ai_generated": "تم توليد هذا الملخص آليا، يرجى التثبت من المصدر الأصلي.", | |
| "all_rights": "كل الحقوق محفوظة.", | |
| "markets": "الاسواق", | |
| "live_report": "تغطية مباشرة", | |
| "confirmed": "مؤكد", | |
| "breaking_feed": "موجز الأخبار", | |
| "global_intel_node": "النود الدولي", | |
| "regional_intel_feed": "إشارات النود الإقليمي:", | |
| "curated_intel": "مختارات:", | |
| "categories": "التصنيفات", | |
| "global_nodes": "النودز الدولية", | |
| "saved_items": "المحفوظات", | |
| "mock_test": "اختبار تجريبي", | |
| "history": "التاريخ", | |
| "analyst_reports": "تقارير محللين", | |
| "intelligence_report": "تقرير الذكاء الاصطناعي", | |
| "verified_source": "مصدر موثوق", | |
| "neutral": "محايد", | |
| "exec_summary": "📌 الملخص التنفيذي", | |
| "analyzing_demo": "تحليل التأثير الديمغرافي...", | |
| "evaluating_strat": "تقييم الأهمية...", | |
| "intel_tags": "أوسمة", | |
| "save_for_later": "🔖 حفظ لاحقا", | |
| "visit_source": "🌐 زيارة المصدر الأصلي" | |
| }, | |
| "japanese": { | |
| "verified": "確認済み:", | |
| "global": "[グローバル]", | |
| "who_affected": "👥 影響を受けるのは誰か", | |
| "why_matters": "⚡ なぜ重要か", | |
| "ai_analysis": "AI分析", | |
| "just_now": "たった今", | |
| "brief_title": "⭐ 60秒の要約", | |
| "see_more": "もっと見る", | |
| "see_more_briefs": "さらに表示", | |
| "top_headlines": "主要な見出し", | |
| "breaking_news": "ニュース速報", | |
| "live_updates": "ライブアップデート", | |
| "system_init": "システム初期化中...", | |
| "gathering_intel": "情報を収集しています...", | |
| "global_system_init": "⚙️ グローバルシステム同期中", | |
| "status": "ステータス:", | |
| "syncing": "同期中...", | |
| "ai_engine_sync": "AIエンジンがニュースソースと同期しています。5〜10分お待ちください。", | |
| "node_backup_active": "📡 バックアップを使用中", | |
| "regional_gathering": "地域ニュースを収集中のため、一時的にグローバルニュースを表示しています。", | |
| "try_sync_node": "再同期する", | |
| "main_dashboard": "メインダッシュボード", | |
| "trending_feed": "トレンドニュース", | |
| "viral": "話題", | |
| "no_trending": "トレンドデータはありません。", | |
| "todays_newspapers": "今日の新聞", | |
| "regional_publications": "地域の出版物", | |
| "universal_news": "ユニバーサル・ニュース", | |
| "update_cycle": "⚡ 15分ごとの更新サイクル", | |
| "last_updated": "最終更新:", | |
| "ai_generated": "AI生成の要約です。元のソースで確認してください。", | |
| "all_rights": "無断転載を禁じます。", | |
| "markets": "市場", | |
| "live_report": "ライブレポート", | |
| "confirmed": "確認済み", | |
| "breaking_feed": "ニュースフィード", | |
| "global_intel_node": "グローバル情報ノード", | |
| "regional_intel_feed": "地域の情報フィード:", | |
| "curated_intel": "厳選情報:", | |
| "categories": "カテゴリー", | |
| "global_nodes": "グローバルノード", | |
| "saved_items": "保存済み", | |
| "mock_test": "模擬テスト", | |
| "history": "履歴", | |
| "analyst_reports": "アナリストレポート", | |
| "intelligence_report": "情報のレポート", | |
| "verified_source": "確認済みの情報源", | |
| "neutral": "中立", | |
| "exec_summary": "📌 エグゼクティブサマリー", | |
| "analyzing_demo": "影響を分析中...", | |
| "evaluating_strat": "重要度を評価中...", | |
| "intel_tags": "インテルタグ", | |
| "save_for_later": "🔖 後で保存", | |
| "visit_source": "🌐 元のソースを訪問" | |
| }, | |
| "french": { | |
| "verified": "VÉRIFIÉ:", | |
| "global": "[GLOBAL]", | |
| "who_affected": "👥 Qui est concerné ?", | |
| "why_matters": "⚡ Pourquoi c'est important", | |
| "ai_analysis": "Analyse IA", | |
| "just_now": "À l'instant", | |
| "brief_title": "⭐ En Bref (60s)", | |
| "see_more": "Voir plus", | |
| "see_more_briefs": "Voir tous les résumés", | |
| "top_headlines": "À la Une", | |
| "breaking_news": "Dernière Heure", | |
| "live_updates": "EN DIRECT", | |
| "system_init": "Initialisation...", | |
| "gathering_intel": "Collecte en cours...", | |
| "global_system_init": "⚙️ Initialisation du système global", | |
| "status": "Statut :", | |
| "syncing": "Synchronisation...", | |
| "ai_engine_sync": "L'IA se synchronise avec les sources. Cela prendra 5-10 minutes.", | |
| "node_backup_active": "📡 Sauvegarde des données active", | |
| "regional_gathering": "Bascule temporaire vers l'information globale.", | |
| "try_sync_node": "Réessayer", | |
| "main_dashboard": "Tableau de Bord Principal", | |
| "trending_feed": "Tendances", | |
| "viral": "VIRAL", | |
| "no_trending": "Aucune tendance pour le moment.", | |
| "todays_newspapers": "Les journaux d'aujourd'hui", | |
| "regional_publications": "Publications régionales", | |
| "universal_news": "UNIVERSAL NEWS", | |
| "update_cycle": "⚡ Cycle de mise à jour: 15min", | |
| "last_updated": "Dernière MÀJ:", | |
| "ai_generated": "Résumé IA. Vérifiez l'original.", | |
| "all_rights": "Tous droits réservés.", | |
| "markets": "MARCHÉS", | |
| "live_report": "Rapport Direct", | |
| "confirmed": "Confirmé", | |
| "breaking_feed": "FIL INFO", | |
| "global_intel_node": "Information Globale", | |
| "regional_intel_feed": "Information régionale pour:", | |
| "curated_intel": "Information validée:", | |
| "categories": "Catégories", | |
| "global_nodes": "Nœuds", | |
| "saved_items": "Sauvegardés", | |
| "mock_test": "Test", | |
| "history": "Historique", | |
| "analyst_reports": "Rapports Experts", | |
| "intelligence_report": "Rapport Synthétique", | |
| "verified_source": "SOURCE VÉRIFIÉE", | |
| "neutral": "Neutre", | |
| "exec_summary": "📌 Résumé", | |
| "analyzing_demo": "Analyse d'impact...", | |
| "evaluating_strat": "Évaluation...", | |
| "intel_tags": "TAGS", | |
| "save_for_later": "🔖 Enregistrer", | |
| "visit_source": "🌐 SOURCE ORIGINALE" | |
| } | |
| } | |
| # Add default fallbacks for Tamil, Kannada, Malayalam using English so it doesn't break | |
| for lang in ["tamil", "kannada", "malayalam"]: | |
| UI_TRANSLATIONS[lang] = UI_TRANSLATIONS["english"] | |
| def get_ui_translations(lang: str) -> dict: | |
| if not lang: | |
| return UI_TRANSLATIONS["english"] | |
| lang = lang.lower().strip() | |
| return UI_TRANSLATIONS.get(lang, UI_TRANSLATIONS.get("english")) | |