o
    [Þh!  ã                   @  sî  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	zd d"lm:Z: W n e;�y   d d"l<m:Z: Y nw zd d#l
m=Z= W n e;�y   dZ>Y nw G d$d%„ d%eƒZ?e=j@Z@e=jAZAdLdMd-d.„Z>G d/d0„ d0ejBƒZCG d1d2„ d2eCƒZDG d3d4„ d4eCƒZEG d5d6„ d6ƒZFdNd:d;„ZGdNd<d=„ZHdNd>d?„ZIeGeHeId@œZJdAeKdB< dOdDdE„ZLdPdJdK„ZMdS )Qé    )Ú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Ú	LocalFreeiöÿÿÿiõÿÿÿiôÿÿÿé   iã  é   ó   iÿ  )ÚBuffer)Ú	pythonapic                   @  sR   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_© r0   r0   úQ/var/www/html/premium_crap/venv/lib/python3.10/site-packages/click/_winconsole.pyr   W   s    õr   Fr!   r   ÚwritableÚboolÚreturnúArray[c_char]c              	   C  s^   t ƒ }|rtnt}tt| ƒt|ƒ|ƒ zt|j }| |j	¡}|W t
t|ƒƒ S t
t|ƒƒ w ©N)r   ÚPyBUF_WRITABLEÚPyBUF_SIMPLEÚPyObject_GetBufferr   r   r   r"   Úfrom_addressr    ÚPyBuffer_Release)r!   r2   r    ÚflagsÚbuffer_typeÚoutr0   r0   r1   Ú
get_bufferi   s   
r?   c                      s(   e Zd Zd
dd„Zd‡ fdd	„Z‡  ZS )Ú_WindowsConsoleRawIOBaseÚhandleú
int | Noner4   ÚNonec                 C  s
   || _ d S r6   )rA   )ÚselfrA   r0   r0   r1   Ú__init__w   ó   
z!_WindowsConsoleRawIOBase.__init__út.Literal[True]c                   s   t ƒ  ¡  dS ©NT)ÚsuperÚisatty©rD   ©Ú	__class__r0   r1   rJ   z   s   
z_WindowsConsoleRawIOBase.isatty)rA   rB   r4   rC   ©r4   rG   )r+   r,   r-   rE   rJ   Ú__classcell__r0   r0   rL   r1   r@   v   s    
r@   c                   @  s    e Zd Zddd„Zddd	„Zd
S )Ú_WindowsConsoleReaderr4   rG   c                 C  ó   dS rH   r0   rK   r0   r0   r1   Úreadable€   ó   z_WindowsConsoleReader.readableÚbr   Úintc                 C  s–   t |ƒ}|sdS |d rtdƒ‚t|dd�}|d }tƒ }tt| jƒ||t|ƒd ƒ}tƒ t	kr4t
 d¡ |s>tdtƒ › �ƒ‚|d tkrFdS d|j S )Nr   r   z>cannot read odd number of bytes from UTF-16-LE encoded consoleT)r2   gš™™™™™¹?zWindows error: )r"   Ú
ValueErrorr?   r	   ÚReadConsoleWr   rA   r   ÚGetLastErrorÚERROR_OPERATION_ABORTEDÚtimeÚsleepÚOSErrorÚEOFÚvalue)rD   rT   Úbytes_to_be_readÚbufferÚcode_units_to_be_readÚcode_units_readÚrvr0   r0   r1   Úreadintoƒ   s0   ÿû


z_WindowsConsoleReader.readintoNrN   ©rT   r   r4   rU   )r+   r,   r-   rR   rd   r0   r0   r0   r1   rP      s    
rP   c                   @  s.   e Zd Zddd„Zeddd	„ƒZddd„ZdS )Ú_WindowsConsoleWriterr4   rG   c                 C  rQ   rH   r0   rK   r0   r0   r1   r2   £   rS   z_WindowsConsoleWriter.writableÚerrnorU   Ústrc                 C  s"   | t krdS | tkrdS d| › �S )NÚERROR_SUCCESSÚERROR_NOT_ENOUGH_MEMORYzWindows error )ri   rj   )rg   r0   r0   r1   Ú_get_error_message¦   s
   
z(_WindowsConsoleWriter._get_error_messagerT   r   c                 C  sl   t |ƒ}t|ƒ}t|tƒd }tƒ }tt| jƒ||t|ƒd ƒ d|j	 }|dkr4|dkr4t
|  tƒ ¡ƒ‚|S )Nr   r   )r"   r?   ÚminÚMAX_BYTES_WRITTENr	   ÚWriteConsoleWr   rA   r   r^   r\   rk   rX   )rD   rT   Úbytes_to_be_writtenr    Úcode_units_to_be_writtenÚcode_units_writtenÚbytes_writtenr0   r0   r1   Úwrite®   s   û
z_WindowsConsoleWriter.writeNrN   )rg   rU   r4   rh   re   )r+   r,   r-   r2   Ústaticmethodrk   rs   r0   r0   r0   r1   rf   ¢   s
    
rf   c                   @  sV   e Zd Zddd„Zed d
d„ƒZd!dd„Zd"dd„Zd#dd„Zd$dd„Z	d dd„Z
dS )%ÚConsoleStreamÚtext_streamút.TextIOÚbyte_streamú
t.BinaryIOr4   rC   c                 C  s   || _ || _d S r6   )Ú_text_streamr`   )rD   rv   rx   r0   r0   r1   rE   Ã   s   
zConsoleStream.__init__rh   c                 C  s   | j jS r6   )r`   ÚnamerK   r0   r0   r1   r{   Ç   s   zConsoleStream.nameÚxút.AnyStrrU   c                 C  sB   t |tƒr| j |¡S z|  ¡  W n	 ty   Y nw | j |¡S r6   )Ú
isinstancerh   rz   rs   ÚflushÚ	Exceptionr`   )rD   r|   r0   r0   r1   rs   Ë   s   
ÿzConsoleStream.writeÚlinesúcabc.Iterable[t.AnyStr]c                 C  s   |D ]}|   |¡ qd S r6   )rs   )rD   r�   Úliner0   r0   r1   Ú
writelinesÔ   s   ÿzConsoleStream.writelinesr{   út.Anyc                 C  s   t | j|ƒS r6   )Úgetattrrz   )rD   r{   r0   r0   r1   Ú__getattr__Ø   s   zConsoleStream.__getattr__r3   c                 C  s
   | j  ¡ S r6   )r`   rJ   rK   r0   r0   r1   rJ   Û   rF   zConsoleStream.isattyc                 C  s   d| j ›d| j›d�S )Nz<ConsoleStream name=z
 encoding=ú>)r{   ÚencodingrK   r0   r0   r1   Ú__repr__Þ   s   zConsoleStream.__repr__N)rv   rw   rx   ry   r4   rC   )r4   rh   )r|   r}   r4   rU   )r�   r‚   r4   rC   )r{   rh   r4   r…   )r4   r3   )r+   r,   r-   rE   Úpropertyr{   rs   r„   r‡   rJ   rŠ   r0   r0   r0   r1   ru   Â   s    


	

ru   Úbuffer_streamry   rw   c                 C  ó.   t t ttƒ¡dddd�}t tjt|| ƒ¡S ©Nú	utf-16-leÚstrictT)Úline_buffering)	r   ÚioÚBufferedReaderrP   ÚSTDIN_HANDLEÚtÚcastÚTextIOru   ©rŒ   rv   r0   r0   r1   Ú_get_text_stdinâ   ó   ür™   c                 C  r�   rŽ   )	r   r’   ÚBufferedWriterrf   ÚSTDOUT_HANDLEr•   r–   r—   ru   r˜   r0   r0   r1   Ú_get_text_stdoutì   rš   r�   c                 C  r�   rŽ   )	r   r’   r›   rf   ÚSTDERR_HANDLEr•   r–   r—   ru   r˜   r0   r0   r1   Ú_get_text_stderrö   rš   rŸ   )r   r   r   z5cabc.Mapping[int, t.Callable[[t.BinaryIO], t.TextIO]]Ú_stream_factoriesÚfc              	   C  sT   t | dƒsdS z|  ¡ }W n ttjfy   Y dS w t |¡}tt|t	t
ƒ ƒƒƒS )NÚfilenoF)Úhasattrr¢   r\   r’   ÚUnsupportedOperationÚmsvcrtÚget_osfhandler3   ÚGetConsoleModer   r   )r¡   r¢   rA   r0   r0   r1   Ú_is_console  s   
ÿ
r¨   r‰   ú
str | NoneÚerrorsút.TextIO | Nonec                 C  s^   t d u s|dvs|dvst| ƒsd S t |  ¡ ¡}|d u rd S t| dd ƒ}|d u r+d S ||ƒS )N>   Nr�   >   Nr�   r`   )r?   r¨   r    Úgetr¢   r†   )r¡   r‰   rª   ÚfuncrT   r0   r0   r1   Ú_get_windows_console_stream  s   ÿr®   )F)r!   r   r2   r3   r4   r5   )rŒ   ry   r4   rw   )r¡   rw   r4   r3   )r¡   rw   r‰   r©   rª   r©   r4   r«   )NÚ
__future__r   Úcollections.abcÚabcÚcabcr’   ÚsysrZ   Útypingr•   Úctypesr   r   r   r   r   r   r	   r
   r   r   r   Úctypes.wintypesr   r   r   r   Ú_compatr   Úplatformr¥   r   r   r.   Úkernel32ÚGetStdHandlerW   rn   r§   rX   r   Úshell32r   r   r”   rœ   rž   r8   r7   ri   rj   rY   ÚSTDIN_FILENOÚSTDOUT_FILENOÚSTDERR_FILENOr]   rm   ÚTYPE_CHECKINGr   ÚImportErrorÚtyping_extensionsr   r?   r   r9   r;   Ú	RawIOBaser@   rP   rf   ru   r™   r�   rŸ   r    Ú__annotations__r¨   r®   r0   r0   r0   r1   Ú<module>   sž   ÿÿý	# 
 



ý
