# translations/__init__.py import logging from importlib import import_module logger = logging.getLogger(__name__) def get_translations(lang_code): # Asegurarse de que lang_code sea válido if lang_code not in ['es', 'en', 'fr']: print(f"Invalid lang_code: {lang_code}. Defaulting to 'es'") lang_code = 'es' try: # Importar dinámicamente el módulo de traducción translation_module = import_module(f'.{lang_code}', package='translations') translations = getattr(translation_module, 'TRANSLATIONS', {}) except ImportError: logger.warning(f"Translation module for {lang_code} not found. Falling back to English.") # Importar el módulo de inglés como fallback translation_module = import_module('.en', package='translations') translations = getattr(translation_module, 'TRANSLATIONS', {}) def get_text(key, section='COMMON', default=''): return translations.get(section, {}).get(key, default) return { 'get_text': get_text, **translations.get('COMMON', {}), **translations.get('TABS', {}), **translations.get('MORPHOSYNTACTIC', {}), **translations.get('SEMANTIC', {}), **translations.get('DISCOURSE', {}), **translations.get('ACTIVITIES', {}), **translations.get('FEEDBACK', {}) }