""" File: clear_blocks.py Author: Elena Ryumina and Dmitry Ryumin Description: Event handler for clearing Gradio app blocks and components. License: MIT License """ import gradio as gr # Importing necessary components for the Gradio app from app.oceanai_init import b5 from app.config import config_data from app.description_steps import STEP_2 from app.utils import read_csv_file, extract_profession_weights from app.practical_tasks import supported_practical_tasks from app.components import ( html_message, button, dataframe, files_create_ui, radio_create_ui, number_create_ui, dropdown_create_ui, video_create_ui, textbox_create_ui, ) def event_handler_calculate_pt_scores_blocks(files, evt_data: gr.EventData): _ = evt_data.target.__class__.__name__ out = False b5.get_avt_predictions_gradio( paths=files, url_accuracy="", accuracy=False, lang="en", out=out ) b5.df_files_.to_csv(config_data.Filenames_PT_SCORES) first_practical_task = next(iter(supported_practical_tasks)) df_files = b5.df_files_.copy() df_files.reset_index(inplace=True) df_traits_priority_for_professions = read_csv_file(config_data.Links_PROFESSIONS) weights_professions, interactive_professions = extract_profession_weights( df_traits_priority_for_professions, config_data.Settings_DROPDOWN_CANDIDATES[0], ) return ( html_message(config_data.InformationMessages_NOTI_VIDEOS, False, False), dataframe( headers=df_files.columns.tolist(), values=df_files.values.tolist(), visible=True, ), files_create_ui( config_data.Filenames_PT_SCORES, "single", [".csv"], config_data.OtherMessages_EXPORT_PT_SCORES, True, False, True, "csv-container", ), gr.HTML(value=STEP_2, visible=True), gr.Column(visible=True), radio_create_ui( first_practical_task, "Practical tasks", list(map(str, supported_practical_tasks.keys())), config_data.InformationMessages_PRACTICAL_TASKS_INFO, True, True, ), radio_create_ui( supported_practical_tasks[first_practical_task][0], "Practical subtasks", supported_practical_tasks[first_practical_task], config_data.InformationMessages_PRACTICAL_SUBTASKS_INFO, True, True, ), gr.JSON( value={ str(task): supported_practical_tasks.get(task, [None])[0] for task in supported_practical_tasks.keys() }, visible=False, render=True, ), gr.Column(visible=True), dropdown_create_ui( label=f"Potential candidates by Personality Type of MBTI ({len(config_data.Settings_DROPDOWN_MBTI)})", info=config_data.InformationMessages_DROPDOWN_MBTI_INFO, choices=config_data.Settings_DROPDOWN_MBTI, value=config_data.Settings_DROPDOWN_MBTI[0], visible=True, elem_classes="dropdown-container", ), number_create_ui( value=0.5, minimum=0.0, maximum=1.0, step=0.01, label=config_data.Labels_THRESHOLD_MBTI_LABEL, info=config_data.InformationMessages_VALUE_FROM_TO_INFO.format(0, 1.0), show_label=True, interactive=True, visible=True, render=True, elem_classes="number-container", ), number_create_ui(visible=False), dropdown_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), dropdown_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), number_create_ui(visible=False), button( config_data.OtherMessages_CALCULATE_PRACTICAL_TASK, True, 1, "./images/pt.ico", True, "calculate_practical_task", ), gr.Row(visible=False), gr.Column(visible=False), dataframe(visible=False), files_create_ui( None, "single", [".csv"], config_data.OtherMessages_EXPORT_PS, True, False, False, "csv-container", ), gr.Accordion(visible=False), gr.HTML(visible=False), dataframe(visible=False), gr.Column(visible=False), video_create_ui(visible=False), gr.Column(visible=False), gr.Row(visible=False), gr.Row(visible=False), gr.Image(visible=False), textbox_create_ui(visible=False), gr.Row(visible=False), gr.Image(visible=False), textbox_create_ui(visible=False), gr.Row(visible=False), gr.Row(visible=False), gr.Image(visible=False), textbox_create_ui(visible=False), gr.Row(visible=False), gr.Image(visible=False), textbox_create_ui(visible=False), html_message(config_data.InformationMessages_NOTI_IN_DEV, False, False), )