SILENT KILLERPanel

Current Path: > > opt > cloudlinux > venv > lib > python3.11 > site-packages > pip > > _vendor > rich


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt/cloudlinux/venv/lib/python3.11/site-packages/pip//_vendor/rich

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
__init__.py File 6090 bytes April 17 2025 13:10:58.
__main__.py File 8477 bytes April 17 2025 13:10:58.
_cell_widths.py File 10209 bytes April 17 2025 13:10:58.
_emoji_codes.py File 140235 bytes April 17 2025 13:10:58.
_emoji_replace.py File 1064 bytes April 17 2025 13:10:58.
_export_format.py File 2128 bytes April 17 2025 13:10:58.
_extension.py File 265 bytes April 17 2025 13:10:58.
_fileno.py File 799 bytes April 17 2025 13:10:58.
_inspect.py File 9655 bytes April 17 2025 13:10:58.
_log_render.py File 3225 bytes April 17 2025 13:10:58.
_loop.py File 1236 bytes April 17 2025 13:10:58.
_null_file.py File 1394 bytes April 17 2025 13:10:58.
_palettes.py File 7063 bytes April 17 2025 13:10:58.
_pick.py File 423 bytes April 17 2025 13:10:58.
_ratio.py File 5471 bytes April 17 2025 13:10:58.
_spinners.py File 19919 bytes April 17 2025 13:10:58.
_stack.py File 351 bytes April 17 2025 13:10:58.
_timer.py File 417 bytes April 17 2025 13:10:58.
_win32_console.py File 22755 bytes April 17 2025 13:10:58.
_windows.py File 1925 bytes April 17 2025 13:10:58.
_windows_renderer.py File 2783 bytes April 17 2025 13:10:58.
_wrap.py File 3404 bytes April 17 2025 13:10:58.
abc.py File 890 bytes April 17 2025 13:10:58.
align.py File 10469 bytes April 17 2025 13:10:58.
ansi.py File 6921 bytes April 17 2025 13:10:58.
bar.py File 3263 bytes April 17 2025 13:10:58.
box.py File 10831 bytes April 17 2025 13:10:58.
cells.py File 5130 bytes April 17 2025 13:10:58.
color.py File 18211 bytes April 17 2025 13:10:58.
color_triplet.py File 1054 bytes April 17 2025 13:10:58.
columns.py File 7131 bytes April 17 2025 13:10:58.
console.py File 100156 bytes April 17 2025 13:10:58.
constrain.py File 1288 bytes April 17 2025 13:10:58.
containers.py File 5502 bytes April 17 2025 13:10:58.
control.py File 6630 bytes April 17 2025 13:10:58.
default_styles.py File 8159 bytes April 17 2025 13:10:58.
diagnose.py File 972 bytes April 17 2025 13:10:58.
emoji.py File 2501 bytes April 17 2025 13:10:58.
errors.py File 642 bytes April 17 2025 13:10:58.
file_proxy.py File 1683 bytes April 17 2025 13:10:58.
filesize.py File 2484 bytes April 17 2025 13:10:58.
highlighter.py File 9586 bytes April 17 2025 13:10:58.
json.py File 5031 bytes April 17 2025 13:10:58.
jupyter.py File 3252 bytes April 17 2025 13:10:58.
layout.py File 14004 bytes April 17 2025 13:10:58.
live.py File 14270 bytes April 17 2025 13:10:58.
live_render.py File 3666 bytes April 17 2025 13:10:58.
logging.py File 12458 bytes April 17 2025 13:10:58.
markup.py File 8451 bytes April 17 2025 13:10:58.
measure.py File 5305 bytes April 17 2025 13:10:58.
padding.py File 4908 bytes April 17 2025 13:10:58.
pager.py File 828 bytes April 17 2025 13:10:58.
palette.py File 3396 bytes April 17 2025 13:10:58.
panel.py File 11235 bytes April 17 2025 13:10:58.
pretty.py File 36391 bytes April 17 2025 13:10:58.
progress.py File 60357 bytes April 17 2025 13:10:58.
progress_bar.py File 8162 bytes April 17 2025 13:10:58.
prompt.py File 12447 bytes April 17 2025 13:10:58.
protocol.py File 1391 bytes April 17 2025 13:10:58.
py.typed File 0 bytes April 17 2025 13:10:58.
region.py File 166 bytes April 17 2025 13:10:58.
repr.py File 4431 bytes April 17 2025 13:10:58.
rule.py File 4602 bytes April 17 2025 13:10:58.
scope.py File 2843 bytes April 17 2025 13:10:58.
screen.py File 1591 bytes April 17 2025 13:10:58.
segment.py File 24743 bytes April 17 2025 13:10:58.
spinner.py File 4364 bytes April 17 2025 13:10:58.
status.py File 4424 bytes April 17 2025 13:10:58.
style.py File 27067 bytes April 17 2025 13:10:58.
styled.py File 1258 bytes April 17 2025 13:10:58.
syntax.py File 35763 bytes April 17 2025 13:10:58.
table.py File 40103 bytes April 17 2025 13:10:58.
terminal_theme.py File 3370 bytes April 17 2025 13:10:58.
text.py File 47552 bytes April 17 2025 13:10:58.
theme.py File 3771 bytes April 17 2025 13:10:58.
themes.py File 102 bytes April 17 2025 13:10:58.
traceback.py File 31797 bytes April 17 2025 13:10:58.
tree.py File 9451 bytes April 17 2025 13:10:58.

Reading File: //opt/cloudlinux/venv/lib/python3.11/site-packages/pip//_vendor/rich/__main__.py

import colorsys
import io
from time import process_time

from pip._vendor.rich import box
from pip._vendor.rich.color import Color
from pip._vendor.rich.console import Console, ConsoleOptions, Group, RenderableType, RenderResult
from pip._vendor.rich.markdown import Markdown
from pip._vendor.rich.measure import Measurement
from pip._vendor.rich.pretty import Pretty
from pip._vendor.rich.segment import Segment
from pip._vendor.rich.style import Style
from pip._vendor.rich.syntax import Syntax
from pip._vendor.rich.table import Table
from pip._vendor.rich.text import Text


class ColorBox:
    def __rich_console__(
        self, console: Console, options: ConsoleOptions
    ) -> RenderResult:
        for y in range(0, 5):
            for x in range(options.max_width):
                h = x / options.max_width
                l = 0.1 + ((y / 5) * 0.7)
                r1, g1, b1 = colorsys.hls_to_rgb(h, l, 1.0)
                r2, g2, b2 = colorsys.hls_to_rgb(h, l + 0.7 / 10, 1.0)
                bgcolor = Color.from_rgb(r1 * 255, g1 * 255, b1 * 255)
                color = Color.from_rgb(r2 * 255, g2 * 255, b2 * 255)
                yield Segment("▄", Style(color=color, bgcolor=bgcolor))
            yield Segment.line()

    def __rich_measure__(
        self, console: "Console", options: ConsoleOptions
    ) -> Measurement:
        return Measurement(1, options.max_width)


def make_test_card() -> Table:
    """Get a renderable that demonstrates a number of features."""
    table = Table.grid(padding=1, pad_edge=True)
    table.title = "Rich features"
    table.add_column("Feature", no_wrap=True, justify="center", style="bold red")
    table.add_column("Demonstration")

    color_table = Table(
        box=None,
        expand=False,
        show_header=False,
        show_edge=False,
        pad_edge=False,
    )
    color_table.add_row(
        (
            "✓ [bold green]4-bit color[/]\n"
            "✓ [bold blue]8-bit color[/]\n"
            "✓ [bold magenta]Truecolor (16.7 million)[/]\n"
            "✓ [bold yellow]Dumb terminals[/]\n"
            "✓ [bold cyan]Automatic color conversion"
        ),
        ColorBox(),
    )

    table.add_row("Colors", color_table)

    table.add_row(
        "Styles",
        "All ansi styles: [bold]bold[/], [dim]dim[/], [italic]italic[/italic], [underline]underline[/], [strike]strikethrough[/], [reverse]reverse[/], and even [blink]blink[/].",
    )

    lorem = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque in metus sed sapien ultricies pretium a at justo. Maecenas luctus velit et auctor maximus."
    lorem_table = Table.grid(padding=1, collapse_padding=True)
    lorem_table.pad_edge = False
    lorem_table.add_row(
        Text(lorem, justify="left", style="green"),
        Text(lorem, justify="center", style="yellow"),
        Text(lorem, justify="right", style="blue"),
        Text(lorem, justify="full", style="red"),
    )
    table.add_row(
        "Text",
        Group(
            Text.from_markup(
                """Word wrap text. Justify [green]left[/], [yellow]center[/], [blue]right[/] or [red]full[/].\n"""
            ),
            lorem_table,
        ),
    )

    def comparison(renderable1: RenderableType, renderable2: RenderableType) -> Table:
        table = Table(show_header=False, pad_edge=False, box=None, expand=True)
        table.add_column("1", ratio=1)
        table.add_column("2", ratio=1)
        table.add_row(renderable1, renderable2)
        return table

    table.add_row(
        "Asian\nlanguage\nsupport",
        ":flag_for_china:  该库支持中文,日文和韩文文本!\n:flag_for_japan:  ライブラリは中国語、日本語、韓国語のテキストをサポートしています\n:flag_for_south_korea:  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다",
    )

    markup_example = (
        "[bold magenta]Rich[/] supports a simple [i]bbcode[/i]-like [b]markup[/b] for [yellow]color[/], [underline]style[/], and emoji! "
        ":+1: :apple: :ant: :bear: :baguette_bread: :bus: "
    )
    table.add_row("Markup", markup_example)

    example_table = Table(
        show_edge=False,
        show_header=True,
        expand=False,
        row_styles=["none", "dim"],
        box=box.SIMPLE,
    )
    example_table.add_column("[green]Date", style="green", no_wrap=True)
    example_table.add_column("[blue]Title", style="blue")
    example_table.add_column(
        "[cyan]Production Budget",
        style="cyan",
        justify="right",
        no_wrap=True,
    )
    example_table.add_column(
        "[magenta]Box Office",
        style="magenta",
        justify="right",
        no_wrap=True,
    )
    example_table.add_row(
        "Dec 20, 2019",
        "Star Wars: The Rise of Skywalker",
        "$275,000,000",
        "$375,126,118",
    )
    example_table.add_row(
        "May 25, 2018",
        "[b]Solo[/]: A Star Wars Story",
        "$275,000,000",
        "$393,151,347",
    )
    example_table.add_row(
        "Dec 15, 2017",
        "Star Wars Ep. VIII: The Last Jedi",
        "$262,000,000",
        "[bold]$1,332,539,889[/bold]",
    )
    example_table.add_row(
        "May 19, 1999",
        "Star Wars Ep. [b]I[/b]: [i]The phantom Menace",
        "$115,000,000",
        "$1,027,044,677",
    )

    table.add_row("Tables", example_table)

    code = '''\
def iter_last(values: Iterable[T]) -> Iterable[Tuple[bool, T]]:
    """Iterate and generate a tuple with a flag for last value."""
    iter_values = iter(values)
    try:
        previous_value = next(iter_values)
    except StopIteration:
        return
    for value in iter_values:
        yield False, previous_value
        previous_value = value
    yield True, previous_value'''

    pretty_data = {
        "foo": [
            3.1427,
            (
                "Paul Atreides",
                "Vladimir Harkonnen",
                "Thufir Hawat",
            ),
        ],
        "atomic": (False, True, None),
    }
    table.add_row(
        "Syntax\nhighlighting\n&\npretty\nprinting",
        comparison(
            Syntax(code, "python3", line_numbers=True, indent_guides=True),
            Pretty(pretty_data, indent_guides=True),
        ),
    )

    markdown_example = """\
# Markdown

Supports much of the *markdown* __syntax__!

- Headers
- Basic formatting: **bold**, *italic*, `code`
- Block quotes
- Lists, and more...
    """
    table.add_row(
        "Markdown", comparison("[cyan]" + markdown_example, Markdown(markdown_example))
    )

    table.add_row(
        "+more!",
        """Progress bars, columns, styled logging handler, tracebacks, etc...""",
    )
    return table


if __name__ == "__main__":  # pragma: no cover
    console = Console(
        file=io.StringIO(),
        force_terminal=True,
    )
    test_card = make_test_card()

    # Print once to warm cache
    start = process_time()
    console.print(test_card)
    pre_cache_taken = round((process_time() - start) * 1000.0, 1)

    console.file = io.StringIO()

    start = process_time()
    console.print(test_card)
    taken = round((process_time() - start) * 1000.0, 1)

    c = Console(record=True)
    c.print(test_card)

    print(f"rendered in {pre_cache_taken}ms (cold cache)")
    print(f"rendered in {taken}ms (warm cache)")

    from pip._vendor.rich.panel import Panel

    console = Console()

    sponsor_message = Table.grid(padding=1)
    sponsor_message.add_column(style="green", justify="right")
    sponsor_message.add_column(no_wrap=True)

    sponsor_message.add_row(
        "Textualize",
        "[u blue link=https://github.com/textualize]https://github.com/textualize",
    )
    sponsor_message.add_row(
        "Twitter",
        "[u blue link=https://twitter.com/willmcgugan]https://twitter.com/willmcgugan",
    )

    intro_message = Text.from_markup(
        """\
We hope you enjoy using Rich!

Rich is maintained with [red]:heart:[/] by [link=https://www.textualize.io]Textualize.io[/]

- Will McGugan"""
    )

    message = Table.grid(padding=2)
    message.add_column()
    message.add_column(no_wrap=True)
    message.add_row(intro_message, sponsor_message)

    console.print(
        Panel.fit(
            message,
            box=box.ROUNDED,
            padding=(1, 2),
            title="[b red]Thanks for trying out Rich!",
            border_style="bright_blue",
        ),
        justify="center",
    )

SILENT KILLER Tool