Загрузить файлы в «venv/Lib/site-packages/pip/_vendor/rich»
This commit is contained in:
193
venv/Lib/site-packages/pip/_vendor/rich/default_styles.py
Normal file
193
venv/Lib/site-packages/pip/_vendor/rich/default_styles.py
Normal file
@@ -0,0 +1,193 @@
|
||||
from typing import Dict
|
||||
|
||||
from .style import Style
|
||||
|
||||
DEFAULT_STYLES: Dict[str, Style] = {
|
||||
"none": Style.null(),
|
||||
"reset": Style(
|
||||
color="default",
|
||||
bgcolor="default",
|
||||
dim=False,
|
||||
bold=False,
|
||||
italic=False,
|
||||
underline=False,
|
||||
blink=False,
|
||||
blink2=False,
|
||||
reverse=False,
|
||||
conceal=False,
|
||||
strike=False,
|
||||
),
|
||||
"dim": Style(dim=True),
|
||||
"bright": Style(dim=False),
|
||||
"bold": Style(bold=True),
|
||||
"strong": Style(bold=True),
|
||||
"code": Style(reverse=True, bold=True),
|
||||
"italic": Style(italic=True),
|
||||
"emphasize": Style(italic=True),
|
||||
"underline": Style(underline=True),
|
||||
"blink": Style(blink=True),
|
||||
"blink2": Style(blink2=True),
|
||||
"reverse": Style(reverse=True),
|
||||
"strike": Style(strike=True),
|
||||
"black": Style(color="black"),
|
||||
"red": Style(color="red"),
|
||||
"green": Style(color="green"),
|
||||
"yellow": Style(color="yellow"),
|
||||
"magenta": Style(color="magenta"),
|
||||
"cyan": Style(color="cyan"),
|
||||
"white": Style(color="white"),
|
||||
"inspect.attr": Style(color="yellow", italic=True),
|
||||
"inspect.attr.dunder": Style(color="yellow", italic=True, dim=True),
|
||||
"inspect.callable": Style(bold=True, color="red"),
|
||||
"inspect.async_def": Style(italic=True, color="bright_cyan"),
|
||||
"inspect.def": Style(italic=True, color="bright_cyan"),
|
||||
"inspect.class": Style(italic=True, color="bright_cyan"),
|
||||
"inspect.error": Style(bold=True, color="red"),
|
||||
"inspect.equals": Style(),
|
||||
"inspect.help": Style(color="cyan"),
|
||||
"inspect.doc": Style(dim=True),
|
||||
"inspect.value.border": Style(color="green"),
|
||||
"live.ellipsis": Style(bold=True, color="red"),
|
||||
"layout.tree.row": Style(dim=False, color="red"),
|
||||
"layout.tree.column": Style(dim=False, color="blue"),
|
||||
"logging.keyword": Style(bold=True, color="yellow"),
|
||||
"logging.level.notset": Style(dim=True),
|
||||
"logging.level.debug": Style(color="green"),
|
||||
"logging.level.info": Style(color="blue"),
|
||||
"logging.level.warning": Style(color="yellow"),
|
||||
"logging.level.error": Style(color="red", bold=True),
|
||||
"logging.level.critical": Style(color="red", bold=True, reverse=True),
|
||||
"log.level": Style.null(),
|
||||
"log.time": Style(color="cyan", dim=True),
|
||||
"log.message": Style.null(),
|
||||
"log.path": Style(dim=True),
|
||||
"repr.ellipsis": Style(color="yellow"),
|
||||
"repr.indent": Style(color="green", dim=True),
|
||||
"repr.error": Style(color="red", bold=True),
|
||||
"repr.str": Style(color="green", italic=False, bold=False),
|
||||
"repr.brace": Style(bold=True),
|
||||
"repr.comma": Style(bold=True),
|
||||
"repr.ipv4": Style(bold=True, color="bright_green"),
|
||||
"repr.ipv6": Style(bold=True, color="bright_green"),
|
||||
"repr.eui48": Style(bold=True, color="bright_green"),
|
||||
"repr.eui64": Style(bold=True, color="bright_green"),
|
||||
"repr.tag_start": Style(bold=True),
|
||||
"repr.tag_name": Style(color="bright_magenta", bold=True),
|
||||
"repr.tag_contents": Style(color="default"),
|
||||
"repr.tag_end": Style(bold=True),
|
||||
"repr.attrib_name": Style(color="yellow", italic=False),
|
||||
"repr.attrib_equal": Style(bold=True),
|
||||
"repr.attrib_value": Style(color="magenta", italic=False),
|
||||
"repr.number": Style(color="cyan", bold=True, italic=False),
|
||||
"repr.number_complex": Style(color="cyan", bold=True, italic=False), # same
|
||||
"repr.bool_true": Style(color="bright_green", italic=True),
|
||||
"repr.bool_false": Style(color="bright_red", italic=True),
|
||||
"repr.none": Style(color="magenta", italic=True),
|
||||
"repr.url": Style(underline=True, color="bright_blue", italic=False, bold=False),
|
||||
"repr.uuid": Style(color="bright_yellow", bold=False),
|
||||
"repr.call": Style(color="magenta", bold=True),
|
||||
"repr.path": Style(color="magenta"),
|
||||
"repr.filename": Style(color="bright_magenta"),
|
||||
"rule.line": Style(color="bright_green"),
|
||||
"rule.text": Style.null(),
|
||||
"json.brace": Style(bold=True),
|
||||
"json.bool_true": Style(color="bright_green", italic=True),
|
||||
"json.bool_false": Style(color="bright_red", italic=True),
|
||||
"json.null": Style(color="magenta", italic=True),
|
||||
"json.number": Style(color="cyan", bold=True, italic=False),
|
||||
"json.str": Style(color="green", italic=False, bold=False),
|
||||
"json.key": Style(color="blue", bold=True),
|
||||
"prompt": Style.null(),
|
||||
"prompt.choices": Style(color="magenta", bold=True),
|
||||
"prompt.default": Style(color="cyan", bold=True),
|
||||
"prompt.invalid": Style(color="red"),
|
||||
"prompt.invalid.choice": Style(color="red"),
|
||||
"pretty": Style.null(),
|
||||
"scope.border": Style(color="blue"),
|
||||
"scope.key": Style(color="yellow", italic=True),
|
||||
"scope.key.special": Style(color="yellow", italic=True, dim=True),
|
||||
"scope.equals": Style(color="red"),
|
||||
"table.header": Style(bold=True),
|
||||
"table.footer": Style(bold=True),
|
||||
"table.cell": Style.null(),
|
||||
"table.title": Style(italic=True),
|
||||
"table.caption": Style(italic=True, dim=True),
|
||||
"traceback.error": Style(color="red", italic=True),
|
||||
"traceback.border.syntax_error": Style(color="bright_red"),
|
||||
"traceback.border": Style(color="red"),
|
||||
"traceback.text": Style.null(),
|
||||
"traceback.title": Style(color="red", bold=True),
|
||||
"traceback.exc_type": Style(color="bright_red", bold=True),
|
||||
"traceback.exc_value": Style.null(),
|
||||
"traceback.offset": Style(color="bright_red", bold=True),
|
||||
"traceback.error_range": Style(underline=True, bold=True),
|
||||
"traceback.note": Style(color="green", bold=True),
|
||||
"traceback.group.border": Style(color="magenta"),
|
||||
"bar.back": Style(color="grey23"),
|
||||
"bar.complete": Style(color="rgb(249,38,114)"),
|
||||
"bar.finished": Style(color="rgb(114,156,31)"),
|
||||
"bar.pulse": Style(color="rgb(249,38,114)"),
|
||||
"progress.description": Style.null(),
|
||||
"progress.filesize": Style(color="green"),
|
||||
"progress.filesize.total": Style(color="green"),
|
||||
"progress.download": Style(color="green"),
|
||||
"progress.elapsed": Style(color="yellow"),
|
||||
"progress.percentage": Style(color="magenta"),
|
||||
"progress.remaining": Style(color="cyan"),
|
||||
"progress.data.speed": Style(color="red"),
|
||||
"progress.spinner": Style(color="green"),
|
||||
"status.spinner": Style(color="green"),
|
||||
"tree": Style(),
|
||||
"tree.line": Style(),
|
||||
"markdown.paragraph": Style(),
|
||||
"markdown.text": Style(),
|
||||
"markdown.em": Style(italic=True),
|
||||
"markdown.emph": Style(italic=True), # For commonmark backwards compatibility
|
||||
"markdown.strong": Style(bold=True),
|
||||
"markdown.code": Style(bold=True, color="cyan", bgcolor="black"),
|
||||
"markdown.code_block": Style(color="cyan", bgcolor="black"),
|
||||
"markdown.block_quote": Style(color="magenta"),
|
||||
"markdown.list": Style(color="cyan"),
|
||||
"markdown.item": Style(),
|
||||
"markdown.item.bullet": Style(color="yellow", bold=True),
|
||||
"markdown.item.number": Style(color="yellow", bold=True),
|
||||
"markdown.hr": Style(color="yellow"),
|
||||
"markdown.h1.border": Style(),
|
||||
"markdown.h1": Style(bold=True),
|
||||
"markdown.h2": Style(bold=True, underline=True),
|
||||
"markdown.h3": Style(bold=True),
|
||||
"markdown.h4": Style(bold=True, dim=True),
|
||||
"markdown.h5": Style(underline=True),
|
||||
"markdown.h6": Style(italic=True),
|
||||
"markdown.h7": Style(italic=True, dim=True),
|
||||
"markdown.link": Style(color="bright_blue"),
|
||||
"markdown.link_url": Style(color="blue", underline=True),
|
||||
"markdown.s": Style(strike=True),
|
||||
"iso8601.date": Style(color="blue"),
|
||||
"iso8601.time": Style(color="magenta"),
|
||||
"iso8601.timezone": Style(color="yellow"),
|
||||
}
|
||||
|
||||
|
||||
if __name__ == "__main__": # pragma: no cover
|
||||
import argparse
|
||||
import io
|
||||
|
||||
from pip._vendor.rich.console import Console
|
||||
from pip._vendor.rich.table import Table
|
||||
from pip._vendor.rich.text import Text
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--html", action="store_true", help="Export as HTML table")
|
||||
args = parser.parse_args()
|
||||
html: bool = args.html
|
||||
console = Console(record=True, width=70, file=io.StringIO()) if html else Console()
|
||||
|
||||
table = Table("Name", "Styling")
|
||||
|
||||
for style_name, style in DEFAULT_STYLES.items():
|
||||
table.add_row(Text(style_name, style=style), str(style))
|
||||
|
||||
console.print(table)
|
||||
if html:
|
||||
print(console.export_html(inline_styles=True))
|
||||
39
venv/Lib/site-packages/pip/_vendor/rich/diagnose.py
Normal file
39
venv/Lib/site-packages/pip/_vendor/rich/diagnose.py
Normal file
@@ -0,0 +1,39 @@
|
||||
import os
|
||||
import platform
|
||||
|
||||
from pip._vendor.rich import inspect
|
||||
from pip._vendor.rich.console import Console, get_windows_console_features
|
||||
from pip._vendor.rich.panel import Panel
|
||||
from pip._vendor.rich.pretty import Pretty
|
||||
|
||||
|
||||
def report() -> None: # pragma: no cover
|
||||
"""Print a report to the terminal with debugging information"""
|
||||
console = Console()
|
||||
inspect(console)
|
||||
features = get_windows_console_features()
|
||||
inspect(features)
|
||||
|
||||
env_names = (
|
||||
"CLICOLOR",
|
||||
"COLORTERM",
|
||||
"COLUMNS",
|
||||
"JPY_PARENT_PID",
|
||||
"JUPYTER_COLUMNS",
|
||||
"JUPYTER_LINES",
|
||||
"LINES",
|
||||
"NO_COLOR",
|
||||
"TERM_PROGRAM",
|
||||
"TERM",
|
||||
"TTY_COMPATIBLE",
|
||||
"TTY_INTERACTIVE",
|
||||
"VSCODE_VERBOSE_LOGGING",
|
||||
)
|
||||
env = {name: os.getenv(name) for name in env_names}
|
||||
console.print(Panel.fit((Pretty(env)), title="[b]Environment Variables"))
|
||||
|
||||
console.print(f'platform="{platform.system()}"')
|
||||
|
||||
|
||||
if __name__ == "__main__": # pragma: no cover
|
||||
report()
|
||||
91
venv/Lib/site-packages/pip/_vendor/rich/emoji.py
Normal file
91
venv/Lib/site-packages/pip/_vendor/rich/emoji.py
Normal file
@@ -0,0 +1,91 @@
|
||||
import sys
|
||||
from typing import TYPE_CHECKING, Optional, Union, Literal
|
||||
|
||||
from .jupyter import JupyterMixin
|
||||
from .segment import Segment
|
||||
from .style import Style
|
||||
from ._emoji_codes import EMOJI
|
||||
from ._emoji_replace import _emoji_replace
|
||||
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from .console import Console, ConsoleOptions, RenderResult
|
||||
|
||||
|
||||
EmojiVariant = Literal["emoji", "text"]
|
||||
|
||||
|
||||
class NoEmoji(Exception):
|
||||
"""No emoji by that name."""
|
||||
|
||||
|
||||
class Emoji(JupyterMixin):
|
||||
__slots__ = ["name", "style", "_char", "variant"]
|
||||
|
||||
VARIANTS = {"text": "\uFE0E", "emoji": "\uFE0F"}
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
name: str,
|
||||
style: Union[str, Style] = "none",
|
||||
variant: Optional[EmojiVariant] = None,
|
||||
) -> None:
|
||||
"""A single emoji character.
|
||||
|
||||
Args:
|
||||
name (str): Name of emoji.
|
||||
style (Union[str, Style], optional): Optional style. Defaults to None.
|
||||
|
||||
Raises:
|
||||
NoEmoji: If the emoji doesn't exist.
|
||||
"""
|
||||
self.name = name
|
||||
self.style = style
|
||||
self.variant = variant
|
||||
try:
|
||||
self._char = EMOJI[name]
|
||||
except KeyError:
|
||||
raise NoEmoji(f"No emoji called {name!r}")
|
||||
if variant is not None:
|
||||
self._char += self.VARIANTS.get(variant, "")
|
||||
|
||||
@classmethod
|
||||
def replace(cls, text: str) -> str:
|
||||
"""Replace emoji markup with corresponding unicode characters.
|
||||
|
||||
Args:
|
||||
text (str): A string with emojis codes, e.g. "Hello :smiley:!"
|
||||
|
||||
Returns:
|
||||
str: A string with emoji codes replaces with actual emoji.
|
||||
"""
|
||||
return _emoji_replace(text)
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"<emoji {self.name!r}>"
|
||||
|
||||
def __str__(self) -> str:
|
||||
return self._char
|
||||
|
||||
def __rich_console__(
|
||||
self, console: "Console", options: "ConsoleOptions"
|
||||
) -> "RenderResult":
|
||||
yield Segment(self._char, console.get_style(self.style))
|
||||
|
||||
|
||||
if __name__ == "__main__": # pragma: no cover
|
||||
import sys
|
||||
|
||||
from pip._vendor.rich.columns import Columns
|
||||
from pip._vendor.rich.console import Console
|
||||
|
||||
console = Console(record=True)
|
||||
|
||||
columns = Columns(
|
||||
(f":{name}: {name}" for name in sorted(EMOJI.keys()) if "\u200D" not in name),
|
||||
column_first=True,
|
||||
)
|
||||
|
||||
console.print(columns)
|
||||
if len(sys.argv) > 1:
|
||||
console.save_html(sys.argv[1])
|
||||
34
venv/Lib/site-packages/pip/_vendor/rich/errors.py
Normal file
34
venv/Lib/site-packages/pip/_vendor/rich/errors.py
Normal file
@@ -0,0 +1,34 @@
|
||||
class ConsoleError(Exception):
|
||||
"""An error in console operation."""
|
||||
|
||||
|
||||
class StyleError(Exception):
|
||||
"""An error in styles."""
|
||||
|
||||
|
||||
class StyleSyntaxError(ConsoleError):
|
||||
"""Style was badly formatted."""
|
||||
|
||||
|
||||
class MissingStyle(StyleError):
|
||||
"""No such style."""
|
||||
|
||||
|
||||
class StyleStackError(ConsoleError):
|
||||
"""Style stack is invalid."""
|
||||
|
||||
|
||||
class NotRenderableError(ConsoleError):
|
||||
"""Object is not renderable."""
|
||||
|
||||
|
||||
class MarkupError(ConsoleError):
|
||||
"""Markup was badly formatted."""
|
||||
|
||||
|
||||
class LiveError(ConsoleError):
|
||||
"""Error related to Live display."""
|
||||
|
||||
|
||||
class NoAltScreen(ConsoleError):
|
||||
"""Alt screen mode was required."""
|
||||
57
venv/Lib/site-packages/pip/_vendor/rich/file_proxy.py
Normal file
57
venv/Lib/site-packages/pip/_vendor/rich/file_proxy.py
Normal file
@@ -0,0 +1,57 @@
|
||||
import io
|
||||
from typing import IO, TYPE_CHECKING, Any, List
|
||||
|
||||
from .ansi import AnsiDecoder
|
||||
from .text import Text
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from .console import Console
|
||||
|
||||
|
||||
class FileProxy(io.TextIOBase):
|
||||
"""Wraps a file (e.g. sys.stdout) and redirects writes to a console."""
|
||||
|
||||
def __init__(self, console: "Console", file: IO[str]) -> None:
|
||||
self.__console = console
|
||||
self.__file = file
|
||||
self.__buffer: List[str] = []
|
||||
self.__ansi_decoder = AnsiDecoder()
|
||||
|
||||
@property
|
||||
def rich_proxied_file(self) -> IO[str]:
|
||||
"""Get proxied file."""
|
||||
return self.__file
|
||||
|
||||
def __getattr__(self, name: str) -> Any:
|
||||
return getattr(self.__file, name)
|
||||
|
||||
def write(self, text: str) -> int:
|
||||
if not isinstance(text, str):
|
||||
raise TypeError(f"write() argument must be str, not {type(text).__name__}")
|
||||
buffer = self.__buffer
|
||||
lines: List[str] = []
|
||||
while text:
|
||||
line, new_line, text = text.partition("\n")
|
||||
if new_line:
|
||||
lines.append("".join(buffer) + line)
|
||||
buffer.clear()
|
||||
else:
|
||||
buffer.append(line)
|
||||
break
|
||||
if lines:
|
||||
console = self.__console
|
||||
with console:
|
||||
output = Text("\n").join(
|
||||
self.__ansi_decoder.decode_line(line) for line in lines
|
||||
)
|
||||
console.print(output)
|
||||
return len(text)
|
||||
|
||||
def flush(self) -> None:
|
||||
output = "".join(self.__buffer)
|
||||
if output:
|
||||
self.__console.print(output)
|
||||
del self.__buffer[:]
|
||||
|
||||
def fileno(self) -> int:
|
||||
return self.__file.fileno()
|
||||
Reference in New Issue
Block a user