U
    ”Ê¹j	  ã                   @   sd   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eed	œd
d„Z	dS )z+Contains a utility for good-looking prints.é    N)ÚListÚUnionc                   @   sŠ   e Zd 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
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[0mz[33m)ÚsÚreturnc                 C   s   |   || j¡S ©N)Ú_formatÚ_bold©Úclsr   © r   úb/var/www/html/bwave/python/venv/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.redc                 C   s   |   || j¡S r   )r   Ú_yellowr
   r   r   r   Úyellow+   s    zANSI.yellow)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   r   ÚclassmethodÚstrr   r   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>>   s     z&tabulate.<locals>.<listcomp>.<genexpr>)Úmax)r$   Úcolr   r   r   Ú
<listcomp>>   s     ztabulate.<locals>.<listcomp>z{{:{}}} c                 S   s   g | ]}d | ‘qS )ú-r   )r$   Úwr   r   r   r)   B   s     Ú
)Úzipr#   ÚformatÚappendÚjoin)r!   r"   Z
col_widthsZ
row_formatÚlinesÚrowr   r   r   Útabulate7   s    r3   ©Zold_commandÚnew_commandc                 C   s    t t d| › d|› d�¡ƒ dS )z3Show a yellow warning about deprecated CLI command.u   âš ï¸�  Warning: 'z' is deprecated. Use 'z
' instead.N)Úprintr   r   r4   r   r   r   Úshow_deprecation_warningH   s    r7   )
r   r   Útypingr   r   r   r    Úintr3   r7   r   r   r   r   Ú<module>   s
   #&