mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-10 16:48:30 +00:00
git-subtree-dir: packages/tools git-subtree-split: 78317b9c127f18bd040c1d77e3c0840cdc9a5b38
132 lines
3.7 KiB
Python
132 lines
3.7 KiB
Python
"""Utility for colored console output."""
|
|
|
|
from typing import Optional
|
|
|
|
|
|
class Printer:
|
|
"""Handles colored console output formatting."""
|
|
|
|
@staticmethod
|
|
def print(content: str, color: Optional[str] = None) -> None:
|
|
"""Prints content with optional color formatting.
|
|
|
|
Args:
|
|
content: The string to be printed.
|
|
color: Optional color name to format the output. If provided,
|
|
must match one of the _print_* methods available in this class.
|
|
If not provided or if the color is not supported, prints without
|
|
formatting.
|
|
"""
|
|
if hasattr(Printer, f"_print_{color}"):
|
|
getattr(Printer, f"_print_{color}")(content)
|
|
else:
|
|
print(content)
|
|
|
|
@staticmethod
|
|
def _print_bold_purple(content: str) -> None:
|
|
"""Prints content in bold purple color.
|
|
|
|
Args:
|
|
content: The string to be printed in bold purple.
|
|
"""
|
|
print("\033[1m\033[95m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_bold_green(content: str) -> None:
|
|
"""Prints content in bold green color.
|
|
|
|
Args:
|
|
content: The string to be printed in bold green.
|
|
"""
|
|
print("\033[1m\033[92m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_purple(content: str) -> None:
|
|
"""Prints content in purple color.
|
|
|
|
Args:
|
|
content: The string to be printed in purple.
|
|
"""
|
|
print("\033[95m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_red(content: str) -> None:
|
|
"""Prints content in red color.
|
|
|
|
Args:
|
|
content: The string to be printed in red.
|
|
"""
|
|
print("\033[91m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_bold_blue(content: str) -> None:
|
|
"""Prints content in bold blue color.
|
|
|
|
Args:
|
|
content: The string to be printed in bold blue.
|
|
"""
|
|
print("\033[1m\033[94m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_yellow(content: str) -> None:
|
|
"""Prints content in yellow color.
|
|
|
|
Args:
|
|
content: The string to be printed in yellow.
|
|
"""
|
|
print("\033[93m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_bold_yellow(content: str) -> None:
|
|
"""Prints content in bold yellow color.
|
|
|
|
Args:
|
|
content: The string to be printed in bold yellow.
|
|
"""
|
|
print("\033[1m\033[93m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_cyan(content: str) -> None:
|
|
"""Prints content in cyan color.
|
|
|
|
Args:
|
|
content: The string to be printed in cyan.
|
|
"""
|
|
print("\033[96m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_bold_cyan(content: str) -> None:
|
|
"""Prints content in bold cyan color.
|
|
|
|
Args:
|
|
content: The string to be printed in bold cyan.
|
|
"""
|
|
print("\033[1m\033[96m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_magenta(content: str) -> None:
|
|
"""Prints content in magenta color.
|
|
|
|
Args:
|
|
content: The string to be printed in magenta.
|
|
"""
|
|
print("\033[35m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_bold_magenta(content: str) -> None:
|
|
"""Prints content in bold magenta color.
|
|
|
|
Args:
|
|
content: The string to be printed in bold magenta.
|
|
"""
|
|
print("\033[1m\033[35m {}\033[00m".format(content))
|
|
|
|
@staticmethod
|
|
def _print_green(content: str) -> None:
|
|
"""Prints content in green color.
|
|
|
|
Args:
|
|
content: The string to be printed in green.
|
|
"""
|
|
print("\033[32m {}\033[00m".format(content))
|