File: //usr/local/lib/python3.10/dist-packages/pip/_vendor/rich/__pycache__/align.cpython-310.pyc
o
��hT( � @ s@ d dl mZ d dlmZmZmZmZ ddlmZ ddl m
Z
ddlmZ ddl
mZ ddlmZ er>dd lmZmZmZmZ ed
Zed ZG dd
� d
e
�ZG dd� de
�Zedkr�d dlmZmZ d dlmZ d dlm Z e� Z!e� Ze ee�"e!d��e�#e!d��e�$e!d���ddd
d�Z%e�&ej#e%ddej'd�� dS dS )� )�chain)�
TYPE_CHECKING�Iterable�Optional�Literal� )� Constrain)�JupyterMixin)�Measurement)�Segment)� StyleType)�Console�ConsoleOptions�RenderableType�RenderResult��left�center�right��top�middle�bottomc @ st e Zd ZdZ d"ddddd�ddded ee d
ee dedee d
ee ddfdd�Z
defdd�Ze
d#ddddd�ddd ee d
ee dedee d
ee dd fdd��Ze
d#ddddd�ddd ee d
ee dedee d
ee dd fdd��Ze
d#ddddd�ddd ee d
ee dedee d
ee dd fdd��Z d$dd�Zdddddefd d!�ZdS )%�Aligna Align a renderable by adding spaces if necessary.
Args:
renderable (RenderableType): A console renderable.
align (AlignMethod): One of "left", "center", or "right""
style (StyleType, optional): An optional style to apply to the background.
vertical (Optional[VerticalAlignMethod], optional): Optional vertical align, one of "top", "middle", or "bottom". Defaults to None.
pad (bool, optional): Pad the right with spaces. Defaults to True.
width (int, optional): Restrict contents to given width, or None to use default width. Defaults to None.
height (int, optional): Set height of align renderable, or None to fit to contents. Defaults to None.
Raises:
ValueError: if ``align`` is not one of the expected values.
r NT)�vertical�pad�width�height�
renderabler �align�styler r r r �returnc C sf |dvrt d|�d���|d ur|dvrt d|�d���|| _|| _|| _|| _|| _|| _|| _d S )Nr zDinvalid value for align, expected "left", "center", or "right" (not �)r zGinvalid value for vertical, expected "top", "middle", or "bottom" (not )�
ValueErrorr r r r r r r )�selfr r r r r r r � r% �A/usr/local/lib/python3.10/dist-packages/pip/_vendor/rich/align.py�__init__! s
�
�
zAlign.__init__c C s d| j �d| j�d�S )NzAlign(z, r"