JFIF$        dd7 

Viewing File: /usr/lib/python3.9/site-packages/pip/_vendor/colorama/__pycache__/ansitowin32.cpython-39.pyc

a

[��f)�@s�ddlZddlZddlZddlmZmZmZmZmZddl	m
Z
mZmZddl
mZmZdZ	edurje
�Z	Gdd�de�ZGdd	�d	e�ZdS)
�N�)�AnsiFore�AnsiBack�	AnsiStyle�Style�BEL)�WinTerm�WinColor�WinStyle)�windll�winapi_testc@sLeZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	e
dd��ZdS)�
StreamWrapperz�
    Wraps a stream (such as stdout), acting as a transparent proxy for all
    attribute access apart from method 'write()', which is delegated to our
    Converter instance.
    cCs||_||_dS�N)�_StreamWrapper__wrapped�_StreamWrapper__convertor)�self�wrappedZ	converter�r�D/usr/lib/python3.9/site-packages/pip/_vendor/colorama/ansitowin32.py�__init__szStreamWrapper.__init__cCst|j|�Sr)�getattrr)r�namerrr�__getattr__szStreamWrapper.__getattr__cOs|jj|i|��Sr)r�	__enter__�r�args�kwargsrrrrszStreamWrapper.__enter__cOs|jj|i|��Sr)r�__exit__rrrrr%szStreamWrapper.__exit__cCs|j�|�dSr)r�write�r�textrrrr(szStreamWrapper.writecCsZ|j}dtjvr0|dur0|tjus,|tjur0dSz
|j}WntyNYdS0|�SdS)NZPYCHARM_HOSTEDTF)r�os�environ�sys�
__stdout__�
__stderr__�isatty�AttributeError)r�streamZ
stream_isattyrrrr&+s

zStreamWrapper.isattycCs(|j}z|jWSty"YdS0dS�NT)r�closedr')rr(rrrr*7s
zStreamWrapper.closedN)�__name__�
__module__�__qualname__�__doc__rrrrrr&�propertyr*rrrrr
sr
c@s~eZdZdZe�d�Ze�d�Zddd�Zdd	�Z	d
d�Z
dd
�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�ZdS)�AnsiToWin32z�
    Implements a 'write()' method which, on Windows, will strip ANSI character
    sequences from the text, and if outputting to a tty, will convert them into
    win32 function calls.
    z?\[((?:\d|;)*)([a-zA-Z])?z?\]([^]*)()?NFcCs�||_||_t||�|_tjdk}|o*t�}|durN|pL|jjoL|j��}||_	|durt|or|jjor|j��}||_
|��|_|jt
ju|_dS)N�nt)r�	autoresetr
r(r!rrr*r&�strip�convert�get_win32_calls�win32_callsr#�stderr�	on_stderr)rrr4r3r2Z
on_windowsZconversion_supportedrrrrIs


zAnsiToWin32.__init__cCs|jp|jp|jS)aj
        True if this class is actually needed. If false, then the output
        stream will not be affected, nor will win32 calls be issued, so
        wrapping stdout is not actually required. This will generally be
        False on non-Windows platforms, unless optional functionality like
        autoreset has been requested using kwargs to init()
        )r4r3r2�rrrr�should_wrapjszAnsiToWin32.should_wrapcNCs@|j�r:t�r:tjtjftjtjtjftjtjtj	ftj	tjtj	ft
jtjt
jft
jtjt
jft
jtjt
jft
jtjt
jft
jtjt
jft
jtjt
jft
jtjt
jft
jtjt
jft
jtjft
jtjt
jdft
jtjt
jdft
jtjt
jdft
jtjt
jdft
jtjt
jdft
jtjt
jdft
jtjt
jdft
jtjt
jdftjtj t
jftjtj t
jftjtj t
jftjtj t
jftjtj t
jftjtj t
jftjtj t
jftjtj t
jftjtj ftjtj t
jdftjtj t
jdftjtj t
jdftjtj t
jdftjtj t
jdftjtj t
jdftjtj t
jdftjtj t
jdfi&St!�Sr))"r4�wintermr�	RESET_ALL�	reset_allZBRIGHTZstyler
ZDIMZNORMALrZBLACKZforer	ZREDZGREENZYELLOWZBLUEZMAGENTAZCYANZWHITEZGREYZRESETZ
LIGHTBLACK_EXZLIGHTRED_EXZ
LIGHTGREEN_EXZLIGHTYELLOW_EXZLIGHTBLUE_EXZLIGHTMAGENTA_EXZLIGHTCYAN_EXZ
LIGHTWHITE_EXrZback�dictr9rrrr5tsR


�(zAnsiToWin32.get_win32_callscCs@|js|jr|�|�n|j�|�|j��|jr<|��dSr)r3r4�write_and_convertrr�flushr2r=rrrrr�s
zAnsiToWin32.writecCs4|jr|�dd�n|js0|jjs0|j�tj�dS)N�m�r)	r4�
call_win32r3r(r*rrrr<r9rrrr=�szAnsiToWin32.reset_allcCsbd}|�|�}|j�|�D]0}|��\}}|�|||�|j|���|}q|�||t|��dS)z�
        Write the given text to our wrapped stream, stripping any ANSI
        sequences from the text, and optionally converting them into win32
        calls.
        rN)�convert_osc�ANSI_CSI_RE�finditer�span�write_plain_text�convert_ansi�groups�len)rr Zcursor�match�start�endrrrr?�s
zAnsiToWin32.write_and_convertcCs*||kr&|j�|||��|j��dSr)rrr@)rr rMrNrrrrH�szAnsiToWin32.write_plain_textcCs"|jr|�||�}|�||�dSr)r4�extract_paramsrC)r�paramstring�command�paramsrrrrI�szAnsiToWin32.convert_ansicCsz|dvr8tdd�|�d�D��}t|�dkrv|d}q n>tdd�|�d�D��}t|�dkrv|d	vrjd
}n|dvrvd}|S)N�Hfcss&|]}t|�dkrt|�ndVqdS)rrN�rK�int��.0�prrr�	<genexpr>��z-AnsiToWin32.extract_params.<locals>.<genexpr>�;�)rcss"|]}t|�dkrt|�VqdS)rNrTrVrrrrY�rZrZJKmrB�ABCD)�tuple�splitrK)rrQrPrRrrrrO�szAnsiToWin32.extract_paramscCs�|dkrV|D]F}||jvr|j|}|d}|dd�}t|jd�}||i|��qn�|dvrttj|d|jd�n�|dvr�tj|d|jd�nf|dvr�tj||jd�nL|dvr�|d}d|fd|f|df|dfd	�|\}	}
tj|	|
|jd�dS)
NrArr)r8�J�KrSr])�A�B�C�D)r6r>r8r;Zerase_screenZ
erase_lineZset_cursor_positionZ
cursor_adjust)rrQrRZparamZ	func_args�funcrr�n�x�yrrrrC�s$

*zAnsiToWin32.call_win32cCs�|j�|�D]n}|��\}}|d|�||d�}|��\}}|tkr|�d�dkr|�d�}|ddvrt�|d�q|S)Nr[rrZ02)	�ANSI_OSC_RErFrGrJr�countr_r;Z	set_title)rr rLrMrNrPrQrRrrrrD�s
zAnsiToWin32.convert_osc)NNF)r+r,r-r.�re�compilerErjrr:r5rr=r?rHrIrOrCrDrrrrr0@s


!
,
r0)rlr#r!�ansirrrrrr;rr	r
�win32rr�objectr
r0rrrr�<module>s0
Back to Directory  nL+D550H?Mx ,D"v]qv;6*Zqn)ZP0!1 A "#a$2Qr D8 a Ri[f\mIykIw0cuFcRı?lO7к_f˓[C$殷WF<_W ԣsKcëIzyQy/_LKℂ;C",pFA:/]=H  ~,ls/9ć:[=/#f;)x{ٛEQ )~ =𘙲r*2~ a _V=' kumFD}KYYC)({ *g&f`툪ry`=^cJ.I](*`wq1dđ#̩͑0;H]u搂@:~וKL Nsh}OIR*8:2 !lDJVo(3=M(zȰ+i*NAr6KnSl)!JJӁ* %݉?|D}d5:eP0R;{$X'xF@.ÊB {,WJuQɲRI;9QE琯62fT.DUJ;*cP A\ILNj!J۱+O\͔]ޒS߼Jȧc%ANolՎprULZԛerE2=XDXgVQeӓk yP7U*omQIs,K`)6\G3t?pgjrmۛجwluGtfh9uyP0D;Uڽ"OXlif$)&|ML0Zrm1[HXPlPR0'G=i2N+0e2]]9VTPO׮7h(F*癈'=QVZDF,d߬~TX G[`le69CR(!S2!P <0x<!1AQ "Raq02Br#SCTb ?Ζ"]mH5WR7k.ۛ!}Q~+yԏz|@T20S~Kek *zFf^2X*(@8r?CIuI|֓>^ExLgNUY+{.RѪ τV׸YTD I62'8Y27'\TP.6d&˦@Vqi|8-OΕ]ʔ U=TL8=;6c| !qfF3aů&~$l}'NWUs$Uk^SV:U# 6w++s&r+nڐ{@29 gL u"TÙM=6(^"7r}=6YݾlCuhquympǦ GjhsǜNlɻ}o7#S6aw4!OSrD57%|?x>L |/nD6?/8w#[)L7+6〼T ATg!%5MmZ/c-{1_Je"|^$'O&ޱմTrb$w)R$& N1EtdU3Uȉ1pM"N*(DNyd96.(jQ)X 5cQɎMyW?Q*!R>6=7)Xj5`J]e8%t!+'!1Q5 !1 AQaqё#2"0BRb?Gt^## .llQT $v,,m㵜5ubV =sY+@d{N! dnO<.-B;_wJt6;QJd.Qc%p{ 1,sNDdFHI0ГoXшe黅XۢF:)[FGXƹ/w_cMeD,ʡcc.WDtA$j@:) -# u c1<@ۗ9F)KJ-hpP]_x[qBlbpʖw q"LFGdƶ*s+ډ_Zc"?%t[IP 6J]#=ɺVvvCGsGh1 >)6|ey?Lӣm,4GWUi`]uJVoVDG< SB6ϏQ@ TiUlyOU0kfV~~}SZ@*WUUi##; s/[=!7}"WN]'(L! ~y5g9T̅JkbM' +s:S +B)v@Mj e Cf jE 0Y\QnzG1д~Wo{T9?`Rmyhsy3!HAD]mc1~2LSu7xT;j$`}4->L#vzŏILS ֭T{rjGKC;bpU=-`BsK.SFw4Mq]ZdHS0)tLg