U
    9%e                     @   sT   d Z ddlZddlmZmZ G dd dZeeeeef   ee edddZdS )	z+Contains a utility for good-looking prints.    N)ListUnionc                   @   sr   e Zd ZdZdZdZdZdZee	e	dddZ
ee	e	dd	d
Zee	e	dddZee	e	e	dddZdS )ANSIz;
    Helper for en.wikipedia.org/wiki/ANSI_escape_code
    z[1mz[90mz[31mz[0m)sreturnc                 C   s   |  || jS N)_format_boldclsr    r   b/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/huggingface_hub/commands/_cli_utils.pybold   s    z	ANSI.boldc                 C   s   |  || jS r   )r   _grayr
   r   r   r   gray!   s    z	ANSI.grayc                 C   s   |  || j| j S r   )r   r	   _redr
   r   r   r   red%   s    zANSI.red)r   coder   c                 C   s"   t jdr|S | | | j S )NNO_COLOR)osenvironget_reset)r   r   r   r   r   r   r   )   s    zANSI._formatN)__name__
__module____qualname____doc__r	   r   r   r   classmethodstrr   r   r   r   r   r   r   r   r      s   r   )rowsheadersr   c                 C   s|   dd t | |f D }dt| j| }g }||j|  ||jdd |D   | D ]}||j|  q\d|S )z
    Inspired by:

    - stackoverflow.com/a/8356620/593036
    - stackoverflow.com/questions/9535954/printing-lists-as-tabular-data
    c                 S   s   g | ]}t d d |D qS )c                 s   s   | ]}t t|V  qd S r   )lenr   ).0xr   r   r   	<genexpr>8   s     z&tabulate.<locals>.<listcomp>.<genexpr>)max)r"   colr   r   r   
<listcomp>8   s     ztabulate.<locals>.<listcomp>z{{:{}}} c                 S   s   g | ]}d | qS )-r   )r"   wr   r   r   r'   <   s     
)zipr!   formatappendjoin)r   r    Z
col_widthsZ
row_formatlinesrowr   r   r   tabulate1   s    r1   )	r   r   typingr   r   r   r   intr1   r   r   r   r   <module>   s   