from __future__ import annotations
_ANSI_COLORS = {
"black": 30,
"red": 31,
"green": 32,
"yellow": 33,
"blue": 34,
"magenta": 35,
"cyan": 36,
"white": 37,
"bright_black": 90,
"bright_red": 91,
"bright_green": 92,
"bright_yellow": 93,
"bright_blue": 94,
"bright_magenta": 95,
"bright_cyan": 96,
"bright_white": 97,
}
def style(text: str, fg: str | None = None, bold: bool = False) -> str:
prefix = ""
if fg is not None:
prefix += f"\033[{_ANSI_COLORS[fg]}m"
if bold:
prefix += "\033[1m"
return f"{prefix}{text}\033[0m"