| from shortGPT.utils.requirements import Requirements |
|
|
|
|
| class CLI: |
|
|
| @staticmethod |
| def display_header(): |
| '''Display the header of the CLI''' |
| CLI.display_green_text(''' |
| .d88888b dP dP .88888. 888888ba d888888P .88888. 888888ba d888888P |
| 88. "' 88 88 d8' `8b 88 `8b 88 d8' `88 88 `8b 88 |
| `Y88888b. 88aaaaa88 88 88 88aaaa8P' 88 88 88aaaa8P' 88 |
| `8b 88 88 88 88 88 `8b. 88 88 YP88 88 88 |
| d8' .8P 88 88 Y8. .8P 88 88 88 Y8. .88 88 88 |
| Y88888P dP dP `8888P' dP dP dP `88888' dP dP |
| |
| ''') |
| CLI.display_green_text("Welcome to ShortGPT! This is an experimental AI framework to automate all aspects of content creation.") |
| print("") |
| CLI.display_requirements_check() |
|
|
| @staticmethod |
| def display_help(): |
| '''Display help''' |
| print("Usage: python shortGPT.py [options]") |
| print("") |
| print("Options:") |
| print(" -h, --help show this help message and exit") |
|
|
| @staticmethod |
| def display_requirements_check(): |
| '''Display information about the system and requirements''' |
| print("Checking requirements...") |
| requirements_manager = Requirements() |
| print(" - Requirements : List of requirements and installed version:") |
| all_req_versions = requirements_manager.get_all_requirements_versions() |
| for req_name, req_version in all_req_versions.items(): |
| if req_version is None: |
| CLI.display_red_text(f"---> Error : {req_name} is not installed") |
| print(f"{req_name}=={req_version}") |
|
|
| print("") |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| class bcolors: |
| HEADER = '\033[95m' |
| OKBLUE = '\033[94m' |
| OKCYAN = '\033[96m' |
| OKGREEN = '\033[92m' |
| WARNING = '\033[93m' |
| FAIL = '\033[91m' |
| ENDC = '\033[0m' |
| BOLD = '\033[1m' |
| UNDERLINE = '\033[4m' |
|
|
| @staticmethod |
| def display_error(error_message, stack_trace): |
| '''Display an error message in the console''' |
| print(CLI.bcolors.FAIL + "ERROR : " + error_message + CLI.bcolors.ENDC) |
| print(stack_trace) |
| print("If the problem persists, don't hesitate to contact our support. We're here to assist you.") |
| print("Get Help on Discord : https://discord.gg/qn2WJaRH") |
|
|
| @staticmethod |
| def get_console_green_text(text): |
| '''Get the text in green color''' |
| return CLI.bcolors.OKGREEN + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_red_text(text): |
| '''Get the text in red color''' |
| return CLI.bcolors.FAIL + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_yellow_text(text): |
| '''Get the text in yellow color''' |
| return CLI.bcolors.WARNING + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_blue_text(text): |
| return CLI.bcolors.OKBLUE + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_bold_text(text): |
| return CLI.bcolors.BOLD + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_underline_text(text): |
| return CLI.bcolors.UNDERLINE + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_cyan_text(text): |
| return CLI.bcolors.OKCYAN + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_header_text(text): |
| return CLI.bcolors.HEADER + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def get_console_text(text, color): |
| return color + text + CLI.bcolors.ENDC |
|
|
| @staticmethod |
| def display_blue_text(text): |
| print(CLI.get_console_blue_text(text)) |
|
|
| @staticmethod |
| def display_green_text(text): |
| print(CLI.get_console_green_text(text)) |
|
|
| @staticmethod |
| def display_red_text(text): |
| print(CLI.get_console_red_text(text)) |
|
|
| @staticmethod |
| def display_yellow_text(text): |
| print(CLI.get_console_yellow_text(text)) |
|
|
| @staticmethod |
| def display_bold_text(text): |
| print(CLI.get_console_bold_text(text)) |
|
|
| @staticmethod |
| def display_underline_text(text): |
| print(CLI.get_console_underline_text(text)) |
|
|
| @staticmethod |
| def display_cyan_text(text): |
| print(CLI.get_console_cyan_text(text)) |
|
|
| @staticmethod |
| def display_header_text(text): |
| print(CLI.get_console_header_text(text)) |
|
|