# modules/__init__.py

from .auth import authenticate_user, register_user
from .database import (
    initialize_mongodb_connection,
    get_student_data,
    store_application_request,
    store_morphosyntax_result,
    store_semantic_result,
    store_discourse_analysis_result,
    store_chat_history,
    create_admin_user,
    create_student_user
)
from .ui import (
    main,
    login_register_page,
    login_form,
    register_form,
    user_page,
    display_student_progress,
    display_morphosyntax_analysis_interface,
    display_semantic_analysis_interface,
    display_discourse_analysis_interface,
    display_chatbot_interface
)
from .admin_ui import admin_page  # Añade esta línea
from .morpho_analysis import (
    get_repeated_words_colors,
    highlight_repeated_words,
    POS_COLORS,
    POS_TRANSLATIONS
)
from .semantic_analysis import (
    visualize_semantic_relations,
    perform_semantic_analysis,
    create_semantic_graph
)
from .discourse_analysis import (
    perform_discourse_analysis,
    compare_semantic_analysis
)
from .spacy_utils import load_spacy_models
from .chatbot import (
    initialize_chatbot,
    get_chatbot_response,
    ClaudeAPIChat  # Nueva clase
)

__all__ = [
    'authenticate_user',
    'register_user',
    'initialize_mongodb_connection',
    'get_student_data',
    'store_morphosyntax_result',
    'store_semantic_result',
    'store_discourse_analysis_result',
    'store_chat_history',
    'create_admin_user',
    'create_student_user',
    'main',
    'login_register_page',
    'login_form',
    'register_form',
    'user_page',
    'admin_page',  # Añade esta línea
    'display_morphosyntax_analysis_interface',
    'display_semantic_analysis_interface',
    'display_discourse_analysis_interface',
    'display_chatbot_interface',
    'display_student_progress',
    'get_repeated_words_colors',
    'highlight_repeated_words',
    'POS_COLORS',
    'POS_TRANSLATIONS',
    'visualize_semantic_relations',
    'perform_semantic_analysis',
    'create_semantic_graph',
    'perform_discourse_analysis',
    'compare_semantic_analysis',
    'load_spacy_models',
    'initialize_chatbot',
    'get_chatbot_response',
    'ClaudeAPIChat'
]