coding-alt/AutoGPT
0
1import os2import re3 4def format_directory(directory):5 output = []6 def helper(directory, level, output):7 files = os.listdir(directory)8 for i, item in enumerate(files):9 is_folder = os.path.isdir(os.path.join(directory, item))10 joiner = "├── " if i < len(files) - 1 else "└── "11 item_html = item + "/" if is_folder else f"<a href='file={os.path.join(directory, item)}'>{item}</a>"12 output.append("│ " * level + joiner + item_html)13 if is_folder:14 helper(os.path.join(directory, item), level + 1, output)15 output.append(os.path.basename(directory) + "/")16 helper(directory, 1, output)17 return "\n".join(output)18 19DOWNLOAD_OUTPUTS_JS = """20() => {21 const a = document.createElement('a');22 a.href = 'file=outputs.zip';23 a.download = 'outputs.zip';24 document.body.appendChild(a);25 a.click();26 document.body.removeChild(a);27}"""28 29def remove_color(text):30 ansi_escape = re.compile(r'\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])')31 return ansi_escape.sub('', text)