From 27aa48462ca0d7701ab355aeada235b9cfe63fb9 Mon Sep 17 00:00:00 2001 From: cardosofede Date: Wed, 23 Aug 2023 00:55:05 +0200 Subject: [PATCH] (feat) add master conf file explorere --- ui_components/master_conf_file_explorer.py | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 ui_components/master_conf_file_explorer.py diff --git a/ui_components/master_conf_file_explorer.py b/ui_components/master_conf_file_explorer.py new file mode 100644 index 0000000..7984390 --- /dev/null +++ b/ui_components/master_conf_file_explorer.py @@ -0,0 +1,32 @@ +from streamlit_elements import mui + +import constants +from ui_components.file_explorer_base import FileExplorerBase +from utils.os_utils import get_directories_from_directory, get_python_files_from_directory, \ + get_yml_files_from_directory, get_log_files_from_directory + + +class MasterConfFileExplorer(FileExplorerBase): + def add_tree_view(self): + directory = constants.HUMMINGBOT_TEMPLATES + configs = [conf.split("/")[-2] for conf in get_directories_from_directory(directory) if "master_bot_conf" in conf] + with mui.lab.TreeView(defaultExpandIcon=mui.icon.ChevronRight, defaultCollapseIcon=mui.icon.ExpandMore, + onNodeSelect=lambda event, node_id: self.set_selected_file(event, node_id), + defaultExpanded=["master_bot_conf"]): + for conf in configs: + with mui.lab.TreeItem(nodeId=conf, label=f"🤖{conf}"): + with mui.lab.TreeItem(nodeId=f"scripts_{conf}", label="🐍Scripts"): + for file in get_python_files_from_directory(f"{directory}/{conf}/scripts"): + mui.lab.TreeItem(nodeId=file, label=f"📄{file.split('/')[-1]}") + with mui.lab.TreeItem(nodeId=f"strategies_{conf}", label="📜Strategies"): + for file in get_yml_files_from_directory(f"{directory}/{conf}/conf/strategies"): + mui.lab.TreeItem(nodeId=file, label=f"📄 {file.split('/')[-1]}") + with mui.lab.TreeItem(nodeId=f"configs_{conf}", label="🗄Client Config"): + for file in get_yml_files_from_directory(f"{directory}/{conf}/conf"): + mui.lab.TreeItem(nodeId=file, label=f"📄 {file.split('/')[-1]}") + with mui.lab.TreeItem(nodeId=f"keys_{conf}", label="🔑Keys"): + for file in get_yml_files_from_directory(f"{directory}/{conf}/conf/connectors"): + mui.lab.TreeItem(nodeId=file, label=f"🔑 {file.split('/')[-1]}") + with mui.lab.TreeItem(nodeId=f"logs_{conf}", label="🗄️Logs"): + for file in get_log_files_from_directory(f"{directory}/{conf}/logs"): + mui.lab.TreeItem(nodeId=file, label=f"📄 {file.split('/')[-1]}")