§
    ïŽ’jÌ#  ã                  óB  — d dl mZ d dlZd dlZddlmZ ddlmZmZm	Z	 ddl
mZ ej        rd dlZg d¢Z G d„ d	¦  «        Z e¦   «         Z	 	 	 d#d$d„Z G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z ed¬¦  «        Z edd¬¦  «        ZdZdZd Zd!Zd"Zd"ZdS )%é    )ÚannotationsNé   )ÚHeaders)Ú	CertTypesÚHeaderTypesÚTimeoutTypes)ÚURL)ÚLimitsÚProxyÚTimeoutÚcreate_ssl_contextc                  ó   — e Zd ZdS )Ú	UnsetTypeN)Ú__name__Ú
__module__Ú__qualname__© ó    ú<C:\Projects\DSCons\.venv\Lib\site-packages\httpx2\_config.pyr   r      s   € € € € € Ø€Dr   r   TÚverifyússl.SSLContext | str | boolÚcertúCertTypes | NoneÚ	trust_envÚboolÚreturnússl.SSLContextc                óx  — dd l }dd l}dd l}| du r¢|rBt          j                             d¦  «        r# |j        t          j        d         ¬¦  «        }�n|rAt          j                             d¦  «        r" |j        t          j        d         ¬¦  «        }nÎ|                     |j        ¦  «        }n³| du r) |j        |j        ¦  «        }d|_	        |j
        |_        n†t          | t          ¦  «        ro|rt          d¦  «        ‚d	}|                     |t           ¦  «         t          j                             | ¦  «        r |j        | ¬¦  «        S  |j        | ¬¦  «        S | }|rRd
}|                     |t           ¦  «         t          |t          ¦  «        r|                     |¦  «         n
 |j        |Ž  |S )Nr   TÚSSL_CERT_FILE)ÚcafileÚSSL_CERT_DIR)ÚcapathFzª`verify=<str>` cannot be combined with `cert=...`. Build an `ssl.SSLContext` and pass it as `verify=<ctx>`, using `.load_cert_chain()` to configure the certificate chain.z�`verify=<str>` is deprecated. Use `verify=ssl.create_default_context(cafile=...)` or `verify=ssl.create_default_context(capath=...)` instead.zz`cert=...` is deprecated. Use `verify=<ssl_context>` instead,with `.load_cert_chain()` to configure the certificate chain.)ÚsslÚwarningsÚ
truststoreÚosÚenvironÚgetÚcreate_default_contextÚ
SSLContextÚPROTOCOL_TLS_CLIENTÚcheck_hostnameÚ	CERT_NONEÚverify_modeÚ
isinstanceÚstrÚ	TypeErrorÚwarnÚDeprecationWarningÚpathÚisdirÚload_cert_chain)r   r   r   r#   r$   r%   ÚctxÚmessages           r   r   r      sò  € ð
 €J€J€JØ€O€O€OàÐÐÐà�€~€~Øð 	A�œŸš¨Ñ8Ô8ð 	AØ,�#Ô,µB´J¸Ô4OÐPÑPÔPˆC‰CØð 	A�2œ:Ÿ>š>¨.Ñ9Ô9ð 	AØ,�#Ô,µB´J¸~Ô4NÐOÑOÔOˆCˆCð ×'Ò'¨Ô(?Ñ@Ô@ˆCˆCØ	�5ˆˆØˆcŒn˜SÔ4Ñ5Ô5ˆØ"ˆÔØœ-ˆŒˆÝ	�F�CÑ	 Ô	 ð Øð 	ÝðQñô ð ðJð 	ð
 	�Š�gÕ1Ñ2Ô2Ð2ÝŒ7�=Š=˜Ñ Ô ð 	=Ø-�3Ô-°VÐ<Ñ<Ô<Ð<Ø)ˆsÔ)°Ð8Ñ8Ô8Ð8àˆàð 	'ðLð 	ð 	�Š�gÕ1Ñ2Ô2Ð2Ý�d�CÑ Ô ð 	'Ø×Ò Ñ%Ô%Ð%Ð%àˆCÔ Ð&Ð&à€Jr   c                  ól   — e Zd ZU dZded<   ded<   ded<   ded<   efeeeedœdd„Zdd„Zdd„Zdd„Z	dS )r   aÄ  
    Timeout configuration.

    **Usage**:

    Timeout(None)               # No timeouts.
    Timeout(5.0)                # 5s timeout on all operations.
    Timeout(None, connect=5.0)  # 5s timeout on connect, no other timeouts.
    Timeout(5.0, connect=10.0)  # 10s timeout on connect. 5s timeout elsewhere.
    Timeout(5.0, pool=None)     # No timeout on acquiring connection from pool.
                                # 5s timeout elsewhere.
    úfloat | NoneÚconnectÚreadÚwriteÚpool©r;   r<   r=   r>   ÚtimeoutúTimeoutTypes | UnsetTypeúNone | float | UnsetTyper   ÚNonec               óò  — t          |t          ¦  «        r^|t          u sJ ‚|t          u sJ ‚|t          u sJ ‚|t          u sJ ‚|j        | _        |j        | _        |j        | _        |j        | _        d S t          |t          ¦  «        r`|d         | _        |d         | _        t          |¦  «        dk     rd n|d         | _        t          |¦  «        dk     rd n|d         | _        d S t          |t          ¦  «        s]t          |t          ¦  «        sHt          |t          ¦  «        s3t          |t          ¦  «        s|| _        || _        || _        || _        d S t          |t          ¦  «        rt          d¦  «        ‚t          |t          ¦  «        r|n|| _        t          |t          ¦  «        r|n|| _        t          |t          ¦  «        r|n|| _        t          |t          ¦  «        r|n|| _        d S )Nr   r   é   é   é   zThttpx2.Timeout must either include a default, or set all four parameters explicitly.)r/   r   ÚUNSETr;   r<   r=   r>   ÚtupleÚlenr   Ú
ValueError)Úselfr@   r;   r<   r=   r>   s         r   Ú__init__zTimeout.__init__a   sâ  € õ �g�wÑ'Ô'ð  	Ià�eÐ#Ð#Ð#Ð#Ø�5�=�=�=�=Ø�E�>�>�>�>Ø�5�=�=�=�=Ø"œ?ˆDŒLØœˆDŒIØ œˆDŒJØœˆDŒIˆIˆIÝ˜¥Ñ'Ô'ð 	Ià" 1œ:ˆDŒLØ œ
ˆDŒIÝ!$ W¡¤°Ò!1Ð!1˜˜°w¸q´zˆDŒJÝ # G¡¤¨qÒ 0Ð 0˜˜°g¸a´jˆDŒIˆIˆIå�w¥	Ñ*Ô*ð	Iå˜$¥	Ñ*Ô*ð	Iõ ˜%¥Ñ+Ô+ð	Iõ ˜$¥	Ñ*Ô*ð		Ið #ˆDŒLØˆDŒIØˆDŒJØˆDŒIˆIˆIå˜'¥9Ñ-Ô-ð yÝ Ð!wÑxÔxÐxÝ&0°½)Ñ&DÔ&DÐQ˜7˜7È'ˆDŒLÝ#-¨dµIÑ#>Ô#>ÐH˜˜ÀDˆDŒIÝ$.¨uµiÑ$@Ô$@ÐK˜˜ÀeˆDŒJÝ#-¨dµIÑ#>Ô#>ÐH˜˜ÀDˆDŒIˆIˆIr   údict[str, float | None]c                ó8   — | j         | j        | j        | j        dœS )Nr?   r?   ©rL   s    r   Úas_dictzTimeout.as_dictŒ   s%   € à”|Ø”IØ”ZØ”Ið	
ð 
ð 	
r   Úotherú
typing.Anyr   c                ó¬   — t          || j        ¦  «        o?| j        |j        k    o/| j        |j        k    o| j        |j        k    o| j        |j        k    S ©N)r/   Ú	__class__r;   r<   r=   r>   ©rL   rR   s     r   Ú__eq__zTimeout.__eq__”   s^   € å�u˜dœnÑ-Ô-ð (Ø” ¤Ò-ð(à”	˜UœZÒ'ð(ð ”
˜eœkÒ)ð(ð ”	˜UœZÒ'ð	
r   r0   c           
     óÔ   — | j         j        }t          | j        | j        | j        | j        h¦  «        dk    r|› d| j        › d�S |› d| j        › d| j        › d| j        › d| j        › d�
S )Nr   z	(timeout=ú)z	(connect=z, read=z, write=z, pool=)rV   r   rJ   r;   r<   r=   r>   ©rL   Ú
class_names     r   Ú__repr__zTimeout.__repr__�   s‚   € Ø”^Ô,ˆ
Ý�”˜dœi¨¬°T´YÐ?Ñ@Ô@ÀAÒEÐEØ Ð:Ð:¨4¬<Ð:Ð:Ð:Ð:ØÐnÐn t¤|ÐnÐn¸D¼IÐnÐnÈtÌzÐnÐnÐbfÔbkÐnÐnÐnÐnr   N)r@   rA   r;   rB   r<   rB   r=   rB   r>   rB   r   rC   )r   rN   ©rR   rS   r   r   ©r   r0   )
r   r   r   Ú__doc__Ú__annotations__rH   rM   rQ   rX   r]   r   r   r   r   r   N   sÒ   € € € € € € ðð ð ÐÐÑØÐÐÑØÐÐÑØÐÐÑð -2ð)Ið -2Ø).Ø*/Ø).ð)Ið )Ið )Ið )Ið )Ið )IðV
ð 
ð 
ð 
ð
ð 
ð 
ð 
ðoð oð oð oð oð or   r   c                  ó4   — e Zd ZdZddddœdd„Zdd„Zdd„ZdS )r
   aÖ  
    Configuration for limits to various client behaviors.

    **Parameters:**

    * **max_connections** - The maximum number of concurrent connections that may be
            established.
    * **max_keepalive_connections** - Allow the connection pool to maintain
            keep-alive connections below this point. Should be less than or equal
            to `max_connections`.
    * **keepalive_expiry** - Time limit on idle keep-alive connections in seconds.
    Nç      @©Úmax_connectionsÚmax_keepalive_connectionsÚkeepalive_expiryre   ú
int | Nonerf   rg   r:   r   rC   c               ó0   — || _         || _        || _        d S rU   rd   )rL   re   rf   rg   s       r   rM   zLimits.__init__²   s"   € ð  /ˆÔØ)BˆÔ&Ø 0ˆÔÐÐr   rR   rS   r   c                óŒ   — t          || j        ¦  «        o/| j        |j        k    o| j        |j        k    o| j        |j        k    S rU   )r/   rV   re   rf   rg   rW   s     r   rX   zLimits.__eq__½   sT   € å�u˜dœnÑ-Ô-ð @ØÔ$¨Ô(=Ò=ð@àÔ.°%Ô2QÒQð@ð Ô%¨Ô)?Ò?ð		
r   r0   c                óT   — | j         j        }|› d| j        › d| j        › d| j        › d�S )Nz(max_connections=z, max_keepalive_connections=z, keepalive_expiry=rZ   )rV   r   re   rf   rg   r[   s     r   r]   zLimits.__repr__Å   sR   € Ø”^Ô,ˆ
àð 9ð 9¨DÔ,@ð 9ð 9Ø)-Ô)Gð9ð 9à $Ô 5ð9ð 9ð 9ð	
r   )re   rh   rf   rh   rg   r:   r   rC   r^   r_   )r   r   r   r`   rM   rX   r]   r   r   r   r
   r
   ¤   so   € € € € € ðð ð  '+Ø04Ø),ð	1ð 	1ð 	1ð 	1ð 	1ð 	1ð
ð 
ð 
ð 
ð
ð 
ð 
ð 
ð 
ð 
r   r
   c                  ó@   — e Zd Zddddœdd„Zedd„¦   «         Zdd„ZdS )r   N)Ússl_contextÚauthÚheadersÚurlú	URL | strrm   ússl.SSLContext | Nonern   útuple[str, str] | Nonero   úHeaderTypes | Noner   rC   c               ó  — t          |¦  «        }t          |¦  «        }|j        dvrt          d|›�¦  «        ‚|j        s|j        r%|j        |j        f}|                     d d ¬¦  «        }|| _        || _        || _	        || _
        d S )N)ÚhttpÚhttpsÚsocks5Úsocks5hzUnknown scheme for proxy URL )ÚusernameÚpassword)r	   r   ÚschemerK   rz   r{   Ú	copy_withrp   rn   ro   rm   )rL   rp   rm   rn   ro   s        r   rM   zProxy.__init__Ï   sš   € õ �#‰hŒhˆÝ˜'Ñ"Ô"ˆàŒ:ÐCÐCÐCÝÐD¸SÐDÐDÑEÔEÐEàŒ<ð 	>˜3œ<ð 	>à”L #¤,Ð/ˆDØ—-’-¨¸�-Ñ=Ô=ˆCàˆŒØˆŒ	ØˆŒØ&ˆÔÐÐr   útuple[bytes, bytes] | Nonec                ó”   — | j         €d n?| j         d                              d¦  «        | j         d                              d¦  «        fS )Nr   zutf-8r   )rn   ÚencoderP   s    r   Úraw_authzProxy.raw_authç   sD   € ð ”yÐ(ˆtˆt¨t¬y¸¬|×/BÒ/BÀ7Ñ/KÔ/KÈTÌYÐWXÌ\×M`ÒM`ÐahÑMiÔMiÐ.jÐjr   r0   c                óÂ   — | j         r| j         d         dfnd }t          | j        ¦  «        ›}|rd|›�nd}| j        rdt	          | j        ¦  «        ›�nd}d|› |› |› d�S )Nr   z********z, auth=Ú z
, headers=zProxy(rZ   )rn   r0   rp   ro   Údict)rL   rn   Úurl_strÚauth_strÚheaders_strs        r   r]   zProxy.__repr__ì   s‡   € à-1¬YÐ@�”	˜!”˜jÐ)Ð)¸Dˆõ ˜œ‘]”]Ð&ˆØ)-Ð5Ð%˜TÐ%Ð%Ð%°2ˆØ=A¼\ÐQÐ9¥4¨¬Ñ#5Ô#5Ð9Ð9Ð9ÈrˆØ9˜Ð9 Ð9¨;Ð9Ð9Ð9Ð9r   )
rp   rq   rm   rr   rn   rs   ro   rt   r   rC   )r   r~   r_   )r   r   r   rM   Úpropertyr�   r]   r   r   r   r   r   Î   su   € € € € € ð
 .2Ø'+Ø&*ð'ð 'ð 'ð 'ð 'ð 'ð0 ðkð kð kñ „Xðkð:ð :ð :ð :ð :ð :r   r   rc   )r@   éd   é   )re   rf   i   i   i   g      4@)TNT)r   r   r   r   r   r   r   r   )Ú
__future__r   r&   ÚtypingÚ_modelsr   Ú_typesr   r   r   Ú_urlsr	   ÚTYPE_CHECKINGr#   Ú__all__r   rH   r   r   r
   r   ÚDEFAULT_TIMEOUT_CONFIGÚDEFAULT_LIMITSÚDEFAULT_MAX_REDIRECTSÚDEFAULT_MAX_EVENT_SIZE_BYTESÚDEFAULT_MAX_MESSAGE_SIZE_BYTESÚDEFAULT_QUEUE_SIZEÚ'DEFAULT_KEEPALIVE_PING_INTERVAL_SECONDSÚ&DEFAULT_KEEPALIVE_PING_TIMEOUT_SECONDSr   r   r   ú<module>rš      sÂ  ðØ "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø €€€à Ð Ð Ð Ð Ð Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø Ð Ð Ð Ð Ð à	Ôð Ø€J€J€Jà
>Ð
>Ð
>€ð	ð 	ð 	ð 	ð 	ñ 	ô 	ð 	ð 	ˆ	‰Œ€ð +/Ø!Øð4ð 4ð 4ð 4ð 4ðnSoð Soð Soð Soð Soñ Soô Soð Soðl'
ð '
ð '
ð '
ð '
ñ '
ô '
ð '
ðT&:ð &:ð &:ð &:ð &:ñ &:ô &:ð &:ðR !˜¨Ð-Ñ-Ô-Ð Ø�¨ÀrÐJÑJÔJ€ØÐ à*Ð à!'Ð ØÐ Ø*.Ð 'Ø)-Ð &Ð &Ð &r   