
    *'&h(!                    <   U d dl mZ d dlmZ d dlZd dlZd dlZd dlZ	d dl
mZ d dl
mZ d dl
mZ d dl
mZ d dl
mZ d dl
mZ d d	l
mZ d d
l
mZ d dl
mZ d dl
mZ d dl
mZ d dlmZ d dlmZ d dlmZ d dlmZ ddlmZ ej        dk    sJ d dlZd dl
mZ d dl
m Z   ee          Z!ej"        Z"e"j#        Z#e"j$        Z$e"j%        Z%e"j&        Z&e"j'        Z'  e e          dej"        f          Z(  e  ee          e ee                    dej)        f          Z*  e ee          dej"        f          Z+ e#d          Z, e#d          Z- e#d          Z.d Z/dZ0d Z1dZ2dZ3d Z4dZ5dZ6d Z7d!Z8e	j9        r	 d d"lm:Z: n# e;$ r	 d d"l<m:Z: Y nw xY w	 d d#l
m=Z=  G d$ d%e          Z>e=j?        Z?e=j@        Z@dFdGd-ZAn# e;$ r dZAY nw xY w G d. d/ejB                  ZC G d0 d1eC          ZD G d2 d3eC          ZE G d4 d5          ZFdHd9ZGdHd:ZHdHd;ZIeGeHeId<ZJd=eKd><   dId@ZLdJdEZMdS )K    )annotationsN)Array)byref)c_char)c_char_p)c_int)	c_ssize_t)c_ulong)c_void_p)POINTER)	py_object)	Structure)DWORD)HANDLE)LPCWSTR)LPWSTR   )_NonClosingTextIOWrapperwin32)windll)WINFUNCTYPEGetCommandLineWCommandLineToArgvW	LocalFreeiii   i        i  )Buffer)	pythonapic                  T    e Zd Zdefdefdefdefdefdefdefdefd	efd
efdefgZ	dS )	Py_bufferbufobjlenitemsizereadonlyndimformatshapestrides
suboffsetsinternalN)
__name__
__module____qualname__r   r   r	   r   r   	c_ssize_p_fields_     L/var/www/html/reinick/venv/lib/python3.11/site-packages/click/_winconsole.pyr!   r!   W   sl        HII#UOx i 	"9%"
r3   r!   Fr#   r   writableboolreturnArray[c_char]c                b   t                      }|rt          nt          }t          t	          |           t          |          |           	 t          |j        z  }|                    |j	                  t          t          |                     S # t          t          |                     w xY wN)r!   PyBUF_WRITABLEPyBUF_SIMPLEPyObject_GetBufferr   r   r   r$   from_addressr"   PyBuffer_Release)r#   r5   r"   flagsbuffer_types        r4   
get_bufferrB   i   s    kk'/A^^\9S>>5::u===	))/#')9K++CG44U3ZZ((((U3ZZ((((s   (B B.c                  (     e Zd ZddZd	 fdZ xZS )
_WindowsConsoleRawIOBasehandle
int | Noner7   Nonec                    || _         d S r:   )rE   )selfrE   s     r4   __init__z!_WindowsConsoleRawIOBase.__init__v   s    r3   t.Literal[True]c                H    t                                                       dS NT)superisatty)rI   	__class__s    r4   rO   z_WindowsConsoleRawIOBase.isattyy   s    tr3   )rE   rF   r7   rG   r7   rK   )r-   r.   r/   rJ   rO   __classcell__)rP   s   @r4   rD   rD   u   sQ                    r3   rD   c                      e Zd Zd	dZd
dZdS )_WindowsConsoleReaderr7   rK   c                    dS rM   r2   rI   s    r4   readablez_WindowsConsoleReader.readable       tr3   br   intc                   t          |          }|sdS |dz  rt          d          t          |d          }|dz  }t                      }t	          t          | j                  ||t          |          d           }t                      t          k    rt          j        d           |st          dt                                 |d         t          k    rdS d|j        z  S )Nr   r   z>cannot read odd number of bytes from UTF-16-LE encoded consoleT)r5   g?zWindows error: )r$   
ValueErrorrB   r
   ReadConsoleWr   rE   r   GetLastErrorERROR_OPERATION_ABORTEDtimesleepOSErrorEOFvalue)rI   rY   bytes_to_be_readbuffercode_units_to_be_readcode_units_readrvs          r4   readintoz_WindowsConsoleReader.readinto   s    q66 	1! 	P   A--- 0A 5!))4;!/""
 
 >>444JsOOO 	><LNN<<===!91?(((r3   NrQ   rY   r   r7   rZ   )r-   r.   r/   rW   rj   r2   r3   r4   rT   rT   ~   s<           ) ) ) ) ) )r3   rT   c                  6    e Zd ZddZedd            Zdd
ZdS )_WindowsConsoleWriterr7   rK   c                    dS rM   r2   rV   s    r4   r5   z_WindowsConsoleWriter.writable   rX   r3   errnorZ   strc                @    | t           k    rdS | t          k    rdS d|  S )NERROR_SUCCESSERROR_NOT_ENOUGH_MEMORYzWindows error )rr   rs   )ro   s    r4   _get_error_messagez(_WindowsConsoleWriter._get_error_message   s2    M!!"?---,,''''r3   rY   r   c                z   t          |          }t          |          }t          |t                    dz  }t	                      }t          t          | j                  ||t          |          d            d|j	        z  }|dk    r4|dk    r.t          |                     t                                          |S )Nr   r   )r$   rB   minMAX_BYTES_WRITTENr
   WriteConsoleWr   rE   r   rd   rb   rt   r^   )rI   rY   bytes_to_be_writtenr"   code_units_to_be_writtencode_units_writtenbytes_writtens          r4   writez_WindowsConsoleWriter.write   s    !!ffmm#&':<M#N#NRS#S $YY4;$$%%	
 	
 	
 .44A"5"9"9$11,..AABBBr3   NrQ   )ro   rZ   r7   rp   rk   )r-   r.   r/   r5   staticmethodrt   r}   r2   r3   r4   rm   rm      s\            ( ( ( \(     r3   rm   c                  V    e Zd ZddZedd	            ZddZddZddZddZ	ddZ
dS )ConsoleStreamtext_streamt.TextIObyte_stream
t.BinaryIOr7   rG   c                "    || _         || _        d S r:   )_text_streamrf   )rI   r   r   s      r4   rJ   zConsoleStream.__init__   s    '!r3   rp   c                    | j         j        S r:   )rf   namerV   s    r4   r   zConsoleStream.name   s    {r3   xt.AnyStrrZ   c                    t          |t                    r| j                            |          S 	 |                                  n# t
          $ r Y nw xY w| j                            |          S r:   )
isinstancerp   r   r}   flush	Exceptionrf   )rI   r   s     r4   r}   zConsoleStream.write   su    a 	.$**1---	JJLLLL 	 	 	D	{  ###s   A 
AAlinescabc.Iterable[t.AnyStr]c                :    |D ]}|                      |           d S r:   )r}   )rI   r   lines      r4   
writelineszConsoleStream.writelines   s0     	 	DJJt	 	r3   r   t.Anyc                ,    t          | j        |          S r:   )getattrr   )rI   r   s     r4   __getattr__zConsoleStream.__getattr__   s    t($///r3   r6   c                4    | j                                         S r:   )rf   rO   rV   s    r4   rO   zConsoleStream.isatty   s    {!!###r3   c                (    d| j         d| j        dS )Nz<ConsoleStream name=z
 encoding=>)r   encodingrV   s    r4   __repr__zConsoleStream.__repr__   s    OdiOOT]OOOOr3   N)r   r   r   r   r7   rG   )r7   rp   )r   r   r7   rZ   )r   r   r7   rG   )r   rp   r7   r   )r7   r6   )r-   r.   r/   rJ   propertyr   r}   r   r   rO   r   r2   r3   r4   r   r      s        " " " "       X $ $ $ $   0 0 0 0$ $ $ $P P P P P Pr3   r   buffer_streamr   r   c                    t          t          j        t          t                              ddd          }t          j        t
          j        t          ||                     S N	utf-16-lestrictT)line_buffering)	r   ioBufferedReaderrT   STDIN_HANDLEtcastTextIOr   r   r   s     r4   _get_text_stdinr      sV    *
/==>>	  K 6!(M+}EEFFFr3   c                    t          t          j        t          t                              ddd          }t          j        t
          j        t          ||                     S r   )	r   r   BufferedWriterrm   STDOUT_HANDLEr   r   r   r   r   s     r4   _get_text_stdoutr      V    *
/>>??	  K 6!(M+}EEFFFr3   c                    t          t          j        t          t                              ddd          }t          j        t
          j        t          ||                     S r   )	r   r   r   rm   STDERR_HANDLEr   r   r   r   r   s     r4   _get_text_stderrr      r   r3   )r   r   r   z5cabc.Mapping[int, t.Callable[[t.BinaryIO], t.TextIO]]_stream_factoriesfc           	         t          | d          sdS 	 |                                 }n# t          t          j        f$ r Y dS w xY wt          j        |          }t          t          |t          t                                                    S )NfilenoF)hasattrr   rb   r   UnsupportedOperationmsvcrtget_osfhandler6   GetConsoleModer   r   )r   r   rE   s      r4   _is_consoler     s    1h uR,-   uu !&))FvuUWW~~66777s   ) AAr   
str | Noneerrorst.TextIO | Nonec                    t           |dvs|dvst          |           sd S t                              |                                           }|d S t          | dd           }|d S  ||          S )N>   Nr   >   Nr   rf   )rB   r   r   getr   r   )r   r   r   funcrY   s        r4   _get_windows_console_streamr     s     	...)))1~~ * t  ,,D|t8T""Ayt477Nr3   )F)r#   r   r5   r6   r7   r8   )r   r   r7   r   )r   r   r7   r6   )r   r   r   r   r   r   r7   r   )N
__future__r   collections.abcabccabcr   sysr`   typingr   ctypesr   r   r   r   r   r	   r
   r   r   r   r   ctypes.wintypesr   r   r   r   _compatr   platformr   r   r   r0   kernel32GetStdHandler]   rx   r   r^   r   shell32r   r   r   r   r   r<   r;   rr   rs   r_   STDIN_FILENOSTDOUT_FILENOSTDERR_FILENOrc   rw   TYPE_CHECKINGr   ImportErrortyping_extensionsr   r!   r=   r?   rB   	RawIOBaserD   rT   rm   r   r   r   r   r   __annotations__r   r   r2   r3   r4   <module>r      s&   # " " " " " "       				 



                                                                        ! ! ! ! ! ! " " " " " " # # # # # # " " " " " " - - - - - -
|w             GI	?$$&($%++f%%'8&/&JKKJ[['775>>JJ6>*   ,KK(++[&/,JKK	|C  S!!S!!   ? -- 	+****** - - -,,,,,,,,-#)      
 
 
 
 
I 
 
 
 #5 1	) 	) 	) 	) 	) 	)1     JJJH    r|    )  )  )  )  )4  )  )  )F    4   @P P P P P P P P@G G G GG G G GG G G G L L     
8 
8 
8 
8     s$   3E: :FFF4 4F>=F>