# ui/document_view_tab.py import gradio as gr from app.document_handling import list_indexed_documents from app.functions.database_handling import list_databases def create_document_view_tab(): """Crea il tab 'Visualizza Documenti Indicizzati' dell'interfaccia Gradio.""" def list_docs_callback(db_name): """Elenca i documenti indicizzati nel database specificato.""" documents = list_indexed_documents(db_name) return "\n".join(documents) # Ottieni la lista dei database databases = list_databases() with gr.Tab("Visualizza Documenti Indicizzati"): with gr.Column(): gr.Markdown("### Documenti nel Database") db_name_list = gr.Dropdown( choices=databases, label="Seleziona Database", value="default_db", interactive=True ) list_button = gr.Button("Visualizza Documenti") list_output = gr.Textbox( label="Elenco Documenti", lines=10, interactive=False, value="Clicca 'Visualizza Documenti' per vedere l'elenco" ) list_button.click( fn=list_docs_callback, inputs=[db_name_list], outputs=[list_output], api_name="list_docs" ) return