Added console module
This commit is contained in:
parent
bb5b1f5944
commit
096b50f9f1
@ -8,7 +8,8 @@ from sh_edraft.configuration.model.configuration_variable_name import Configurat
|
|||||||
from sh_edraft.environment.base.environment_base import EnvironmentBase
|
from sh_edraft.environment.base.environment_base import EnvironmentBase
|
||||||
from sh_edraft.environment.hosting_environment import HostingEnvironment
|
from sh_edraft.environment.hosting_environment import HostingEnvironment
|
||||||
from sh_edraft.environment.model.environment_name import EnvironmentName
|
from sh_edraft.environment.model.environment_name import EnvironmentName
|
||||||
from sh_edraft.utils.console import Console
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class Configuration(ConfigurationBase):
|
class Configuration(ConfigurationBase):
|
||||||
@ -25,15 +26,21 @@ class Configuration(ConfigurationBase):
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _print_info(name: str, message: str):
|
def _print_info(name: str, message: str):
|
||||||
Console.write_line(f'[{name}] {message}', 'green')
|
Console.set_foreground_color(ForegroundColor.green)
|
||||||
|
Console.write_line(f'[{name}] {message}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _print_warn(name: str, message: str):
|
def _print_warn(name: str, message: str):
|
||||||
Console.write_line(f'[{name}] {message}', 'yellow')
|
Console.set_foreground_color(ForegroundColor.yellow)
|
||||||
|
Console.write_line(f'[{name}] {message}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _print_error(name: str, message: str):
|
def _print_error(name: str, message: str):
|
||||||
Console.write_line(f'[{name}] {message}', 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
|
Console.write_line(f'[{name}] {message}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
def _set_variable(self, name: str, value: str):
|
def _set_variable(self, name: str, value: str):
|
||||||
if name == ConfigurationVariableName.environment.value:
|
if name == ConfigurationVariableName.environment.value:
|
||||||
|
@ -5,7 +5,8 @@ from sqlalchemy.orm import Session, sessionmaker
|
|||||||
|
|
||||||
from sh_edraft.database.connection.base.database_connection_base import DatabaseConnectionBase
|
from sh_edraft.database.connection.base.database_connection_base import DatabaseConnectionBase
|
||||||
from sh_edraft.database.model.database_settings import DatabaseSettings
|
from sh_edraft.database.model.database_settings import DatabaseSettings
|
||||||
from sh_edraft.utils.console import Console
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class DatabaseConnection(DatabaseConnectionBase):
|
class DatabaseConnection(DatabaseConnectionBase):
|
||||||
@ -44,8 +45,12 @@ class DatabaseConnection(DatabaseConnectionBase):
|
|||||||
|
|
||||||
db_session = sessionmaker(bind=self._engine)
|
db_session = sessionmaker(bind=self._engine)
|
||||||
self._session = db_session()
|
self._session = db_session()
|
||||||
Console.write_line(f'[{__name__}] Connected to database', 'green')
|
Console.set_foreground_color(ForegroundColor.green)
|
||||||
|
Console.write_line(f'[{__name__}] Connected to database')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
Console.write_line(f'[{__name__}] Database connection failed -> {e}', 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
|
Console.write_line(f'[{__name__}] Database connection failed -> {e}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
|
@ -6,7 +6,8 @@ from sh_edraft.database.connection.base.database_connection_base import Database
|
|||||||
from sh_edraft.database.context.base.database_context_base import DatabaseContextBase
|
from sh_edraft.database.context.base.database_context_base import DatabaseContextBase
|
||||||
from sh_edraft.database.model.dbmodel import DBModel
|
from sh_edraft.database.model.dbmodel import DBModel
|
||||||
from sh_edraft.database.model.database_settings import DatabaseSettings
|
from sh_edraft.database.model.database_settings import DatabaseSettings
|
||||||
from sh_edraft.utils.console import Console
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class DatabaseContext(DatabaseContextBase):
|
class DatabaseContext(DatabaseContextBase):
|
||||||
@ -39,7 +40,11 @@ class DatabaseContext(DatabaseContextBase):
|
|||||||
|
|
||||||
DBModel.metadata.drop_all(self._db.engine, self._tables)
|
DBModel.metadata.drop_all(self._db.engine, self._tables)
|
||||||
DBModel.metadata.create_all(self._db.engine, self._tables, checkfirst=True)
|
DBModel.metadata.create_all(self._db.engine, self._tables, checkfirst=True)
|
||||||
Console.write_line(f'[{__name__}] Created tables', 'green')
|
Console.set_foreground_color(ForegroundColor.green)
|
||||||
|
Console.write_line(f'[{__name__}] Created tables')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
Console.write_line(f'[{__name__}] Creating tables failed -> {e}', 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
|
Console.write_line(f'[{__name__}] Creating tables failed -> {e}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
exit()
|
exit()
|
||||||
|
@ -3,7 +3,8 @@ from typing import Optional
|
|||||||
|
|
||||||
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
||||||
from sh_edraft.database.model.database_settings_name import DatabaseSettingsName
|
from sh_edraft.database.model.database_settings_name import DatabaseSettingsName
|
||||||
from sh_edraft.utils.console import Console
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class DatabaseSettings(ConfigurationModelBase):
|
class DatabaseSettings(ConfigurationModelBase):
|
||||||
@ -71,5 +72,7 @@ class DatabaseSettings(ConfigurationModelBase):
|
|||||||
if DatabaseSettingsName.echo.value in settings:
|
if DatabaseSettingsName.echo.value in settings:
|
||||||
self._echo = bool(settings[DatabaseSettingsName.echo.value])
|
self._echo = bool(settings[DatabaseSettingsName.echo.value])
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
Console.write_line(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings', 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}', 'red')
|
Console.write_line(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings')
|
||||||
|
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
@ -8,7 +8,8 @@ from sh_edraft.logging.base.logger_base import LoggerBase
|
|||||||
from sh_edraft.logging.model.logging_settings import LoggingSettings
|
from sh_edraft.logging.model.logging_settings import LoggingSettings
|
||||||
from sh_edraft.logging.model.logging_level import LoggingLevel
|
from sh_edraft.logging.model.logging_level import LoggingLevel
|
||||||
from sh_edraft.time.model.time_format_settings import TimeFormatSettings
|
from sh_edraft.time.model.time_format_settings import TimeFormatSettings
|
||||||
from sh_edraft.utils.console import Console
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class Logger(LoggerBase):
|
class Logger(LoggerBase):
|
||||||
@ -80,7 +81,9 @@ class Logger(LoggerBase):
|
|||||||
def header(self, string: str):
|
def header(self, string: str):
|
||||||
# append log and print message
|
# append log and print message
|
||||||
self._append_log(string)
|
self._append_log(string)
|
||||||
Console.write_line(string, 'white')
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
Console.write_line(string)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
def trace(self, name: str, message: str):
|
def trace(self, name: str, message: str):
|
||||||
output = self._get_string(name, LoggingLevel.TRACE, message)
|
output = self._get_string(name, LoggingLevel.TRACE, message)
|
||||||
@ -91,7 +94,9 @@ class Logger(LoggerBase):
|
|||||||
|
|
||||||
# check if message can be shown in console
|
# check if message can be shown in console
|
||||||
if self._console.value >= LoggingLevel.TRACE.value:
|
if self._console.value >= LoggingLevel.TRACE.value:
|
||||||
Console.write_line(output, 'green')
|
Console.set_foreground_color(ForegroundColor.green)
|
||||||
|
Console.write_line(output)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
def debug(self, name: str, message: str):
|
def debug(self, name: str, message: str):
|
||||||
output = self._get_string(name, LoggingLevel.DEBUG, message)
|
output = self._get_string(name, LoggingLevel.DEBUG, message)
|
||||||
@ -102,7 +107,9 @@ class Logger(LoggerBase):
|
|||||||
|
|
||||||
# check if message can be shown in console
|
# check if message can be shown in console
|
||||||
if self._console.value >= LoggingLevel.DEBUG.value:
|
if self._console.value >= LoggingLevel.DEBUG.value:
|
||||||
Console.write_line(output, 'green')
|
Console.set_foreground_color(ForegroundColor.green)
|
||||||
|
Console.write_line(output)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
def info(self, name: str, message: str):
|
def info(self, name: str, message: str):
|
||||||
output = self._get_string(name, LoggingLevel.INFO, message)
|
output = self._get_string(name, LoggingLevel.INFO, message)
|
||||||
@ -113,7 +120,9 @@ class Logger(LoggerBase):
|
|||||||
|
|
||||||
# check if message can be shown in console
|
# check if message can be shown in console
|
||||||
if self._console.value >= LoggingLevel.INFO.value:
|
if self._console.value >= LoggingLevel.INFO.value:
|
||||||
Console.write_line(output, 'green')
|
Console.set_foreground_color(ForegroundColor.green)
|
||||||
|
Console.write_line(output)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
def warn(self, name: str, message: str):
|
def warn(self, name: str, message: str):
|
||||||
output = self._get_string(name, LoggingLevel.WARN, message)
|
output = self._get_string(name, LoggingLevel.WARN, message)
|
||||||
@ -124,7 +133,9 @@ class Logger(LoggerBase):
|
|||||||
|
|
||||||
# check if message can be shown in console
|
# check if message can be shown in console
|
||||||
if self._console.value >= LoggingLevel.WARN.value:
|
if self._console.value >= LoggingLevel.WARN.value:
|
||||||
Console.write_line(output, 'yellow')
|
Console.set_foreground_color(ForegroundColor.yellow)
|
||||||
|
Console.write_line(output)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
def error(self, name: str, message: str, ex: Exception = None):
|
def error(self, name: str, message: str, ex: Exception = None):
|
||||||
output = ''
|
output = ''
|
||||||
@ -141,7 +152,9 @@ class Logger(LoggerBase):
|
|||||||
|
|
||||||
# check if message can be shown in console
|
# check if message can be shown in console
|
||||||
if self._console.value >= LoggingLevel.ERROR.value:
|
if self._console.value >= LoggingLevel.ERROR.value:
|
||||||
Console.write_line(output, 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
|
Console.write_line(output)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
def fatal(self, name: str, message: str, ex: Exception = None):
|
def fatal(self, name: str, message: str, ex: Exception = None):
|
||||||
output = ''
|
output = ''
|
||||||
@ -158,7 +171,9 @@ class Logger(LoggerBase):
|
|||||||
|
|
||||||
# check if message can be shown in console
|
# check if message can be shown in console
|
||||||
if self._console.value >= LoggingLevel.FATAL.value:
|
if self._console.value >= LoggingLevel.FATAL.value:
|
||||||
Console.write_line(output, 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
|
Console.write_line(output)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
@ -173,6 +188,8 @@ class Logger(LoggerBase):
|
|||||||
|
|
||||||
# check if message can be shown in console
|
# check if message can be shown in console
|
||||||
if self._console.value >= LoggingLevel.FATAL.value:
|
if self._console.value >= LoggingLevel.FATAL.value:
|
||||||
Console.write_line(output, 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
|
Console.write_line(output)
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
|
||||||
exit()
|
exit()
|
||||||
|
@ -3,8 +3,9 @@ from typing import Optional
|
|||||||
|
|
||||||
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
||||||
from sh_edraft.logging.model.logging_settings_name import LoggingSettingsName
|
from sh_edraft.logging.model.logging_settings_name import LoggingSettingsName
|
||||||
from sh_edraft.utils.console import Console
|
|
||||||
from sh_edraft.logging.model.logging_level import LoggingLevel
|
from sh_edraft.logging.model.logging_level import LoggingLevel
|
||||||
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class LoggingSettings(ConfigurationModelBase):
|
class LoggingSettings(ConfigurationModelBase):
|
||||||
@ -55,5 +56,7 @@ class LoggingSettings(ConfigurationModelBase):
|
|||||||
self._console = LoggingLevel[settings[LoggingSettingsName.console_level.value]]
|
self._console = LoggingLevel[settings[LoggingSettingsName.console_level.value]]
|
||||||
self._level = LoggingLevel[settings[LoggingSettingsName.file_level.value]]
|
self._level = LoggingLevel[settings[LoggingSettingsName.file_level.value]]
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
Console.write_line(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings', 'red')
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}', 'red')
|
Console.write_line(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings')
|
||||||
|
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
@ -4,7 +4,8 @@ from typing import Optional
|
|||||||
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
||||||
from sh_edraft.publishing.model.template import Template
|
from sh_edraft.publishing.model.template import Template
|
||||||
from sh_edraft.publishing.model.publish_settings_name import PublishSettingsName
|
from sh_edraft.publishing.model.publish_settings_name import PublishSettingsName
|
||||||
from sh_edraft.utils.console import Console
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class PublishSettings(ConfigurationModelBase):
|
class PublishSettings(ConfigurationModelBase):
|
||||||
@ -78,6 +79,8 @@ class PublishSettings(ConfigurationModelBase):
|
|||||||
self._excluded_files = settings[PublishSettingsName.excluded_files.value]
|
self._excluded_files = settings[PublishSettingsName.excluded_files.value]
|
||||||
self._template_ending = settings[PublishSettingsName.template_ending.value]
|
self._template_ending = settings[PublishSettingsName.template_ending.value]
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
Console.write_line(
|
Console.write_line(
|
||||||
f'[ ERROR ] [ {__name__} ]: Reading error in {PublishSettingsName.publish.value} settings', 'red')
|
f'[ ERROR ] [ {__name__} ]: Reading error in {PublishSettingsName.publish.value} settings')
|
||||||
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}', 'red')
|
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
@ -3,7 +3,8 @@ from typing import Optional
|
|||||||
|
|
||||||
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
from sh_edraft.configuration.base.configuration_model_base import ConfigurationModelBase
|
||||||
from sh_edraft.time.model.time_format_settings_names import TimeFormatSettingsNames
|
from sh_edraft.time.model.time_format_settings_names import TimeFormatSettingsNames
|
||||||
from sh_edraft.utils.console import Console
|
from sh_edraft.utils.console.console import Console
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
class TimeFormatSettings(ConfigurationModelBase):
|
class TimeFormatSettings(ConfigurationModelBase):
|
||||||
@ -56,5 +57,7 @@ class TimeFormatSettings(ConfigurationModelBase):
|
|||||||
self._date_time_format = settings[TimeFormatSettingsNames.date_time_format.value]
|
self._date_time_format = settings[TimeFormatSettingsNames.date_time_format.value]
|
||||||
self._date_time_log_format = settings[TimeFormatSettingsNames.date_time_log_format.value]
|
self._date_time_log_format = settings[TimeFormatSettingsNames.date_time_log_format.value]
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
Console.set_foreground_color(ForegroundColor.red)
|
||||||
Console.write_line(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings')
|
Console.write_line(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings')
|
||||||
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}', 'red')
|
Console.write_line(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}')
|
||||||
|
Console.set_foreground_color(ForegroundColor.default)
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
from termcolor import colored
|
|
||||||
|
|
||||||
|
|
||||||
class Console:
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def write_line(string: str, color: str = None):
|
|
||||||
if color is not None:
|
|
||||||
print(colored(string, color))
|
|
||||||
else:
|
|
||||||
print(string)
|
|
3
src/sh_edraft/utils/console/__init__.py
Normal file
3
src/sh_edraft/utils/console/__init__.py
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# imports:
|
||||||
|
|
||||||
|
from .console import Console
|
76
src/sh_edraft/utils/console/console.py
Normal file
76
src/sh_edraft/utils/console/console.py
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
import os
|
||||||
|
import subprocess
|
||||||
|
from typing import Union
|
||||||
|
from termcolor import colored
|
||||||
|
|
||||||
|
from sh_edraft.utils.console.model.background_color import BackgroundColor
|
||||||
|
from sh_edraft.utils.console.model.foreground_color import ForegroundColor
|
||||||
|
|
||||||
|
|
||||||
|
class Console:
|
||||||
|
_background_color: BackgroundColor = BackgroundColor.default
|
||||||
|
_foreground_color: ForegroundColor = ForegroundColor.default
|
||||||
|
|
||||||
|
@property
|
||||||
|
def background_color(self) -> BackgroundColor:
|
||||||
|
return self._background_color
|
||||||
|
|
||||||
|
@property
|
||||||
|
def foreground_color(self) -> ForegroundColor:
|
||||||
|
return self._foreground_color
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def set_background_color(cls, color: Union[BackgroundColor, str]):
|
||||||
|
if type(color) is str:
|
||||||
|
cls._background_color = BackgroundColor[color]
|
||||||
|
else:
|
||||||
|
cls._background_color = color
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def set_foreground_color(cls, color: Union[ForegroundColor, str]):
|
||||||
|
if type(color) is str:
|
||||||
|
cls._foreground_color = ForegroundColor[color]
|
||||||
|
else:
|
||||||
|
cls._foreground_color = color
|
||||||
|
|
||||||
|
# useful methods
|
||||||
|
@staticmethod
|
||||||
|
def clear():
|
||||||
|
os.system('cls' if os.name == 'nt' else 'clear')
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def new():
|
||||||
|
if os.name == 'nt':
|
||||||
|
os.system("start /wait cmd")
|
||||||
|
else:
|
||||||
|
p = subprocess.Popen(args=["gnome-terminal"])
|
||||||
|
p.communicate()
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def read(output: str = None) -> str:
|
||||||
|
user_input = input(output if output else '')
|
||||||
|
return user_input[0]
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def read_line(output: str = None) -> str:
|
||||||
|
return input(output if output else '')
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def reset(cls):
|
||||||
|
cls._background_color = BackgroundColor.default
|
||||||
|
cls._foreground_color = ForegroundColor.default
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def write(cls, string: str):
|
||||||
|
if cls._foreground_color == ForegroundColor.default:
|
||||||
|
print(colored(string), end='')
|
||||||
|
else:
|
||||||
|
print(colored(string, cls._foreground_color.value), end='')
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def write_line(cls, *args):
|
||||||
|
string = ' '.join(map(str, args))
|
||||||
|
if cls._foreground_color == ForegroundColor.default:
|
||||||
|
print(colored(string))
|
||||||
|
else:
|
||||||
|
print(colored(string, cls._foreground_color.value))
|
4
src/sh_edraft/utils/console/model/__init__.py
Normal file
4
src/sh_edraft/utils/console/model/__init__.py
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# imports:
|
||||||
|
|
||||||
|
from .background_color import BackgroundColor
|
||||||
|
from .foreground_color import ForegroundColor
|
14
src/sh_edraft/utils/console/model/background_color.py
Normal file
14
src/sh_edraft/utils/console/model/background_color.py
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
from enum import Enum
|
||||||
|
|
||||||
|
|
||||||
|
class BackgroundColor(Enum):
|
||||||
|
|
||||||
|
default = 'default'
|
||||||
|
grey = 'grey'
|
||||||
|
red = 'red'
|
||||||
|
green = 'green'
|
||||||
|
yellow = 'yellow'
|
||||||
|
blue = 'blue'
|
||||||
|
magenta = 'magenta'
|
||||||
|
cyan = 'cyan'
|
||||||
|
white = 'white'
|
14
src/sh_edraft/utils/console/model/foreground_color.py
Normal file
14
src/sh_edraft/utils/console/model/foreground_color.py
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
from enum import Enum
|
||||||
|
|
||||||
|
|
||||||
|
class ForegroundColor(Enum):
|
||||||
|
|
||||||
|
default = 'default'
|
||||||
|
grey = 'grey'
|
||||||
|
red = 'red'
|
||||||
|
green = 'green'
|
||||||
|
yellow = 'yellow'
|
||||||
|
blue = 'blue'
|
||||||
|
magenta = 'magenta'
|
||||||
|
cyan = 'cyan'
|
||||||
|
white = 'white'
|
Loading…
Reference in New Issue
Block a user