ó
    Eñi9  ã                   óÐ  • S r SSKrSSKrSSKrSSKrSSKrSSKrSSKr	SSK
JrJrJrJr  Sr/ SQrSrS\R$                  R'                  5       S   -   rSS.S	 jrS
\S\SS4S jrS)S jrS rS)S jrS)S jrS r\R<                  S\SSSSSSSSSS.S j5       r " S S5      r  " S S\5      r! " S S\5      r"Sr#Sr$ " S S\5      r%S  r&S! r'S" r(S# r)S$ r*S% r+S&\SSSSS'.S( jr,g)*zô
mureq is a replacement for python-requests, intended to be vendored
in-tree by Linux systems software and other lightweight applications.

mureq is copyright 2021 by its contributors and is released under the
0BSD ("zero-clause BSD") license.
é    N)ÚHTTPConnectionÚHTTPSConnectionÚHTTPMessageÚHTTPExceptionz0.2.0)r   ÚTooManyRedirectsÚResponseÚyield_responseÚrequestÚgetÚpostÚheadÚputÚpatchÚdeleteg      .@zPython )Ú
read_limitc                ó@  • [        X40 UD6 n UR                  U5      n[        UR                  UR                  [        UR                  5      U5      sSSS5        $ ! [         a    e [         a  n[        [	        U5      5      UeSnAff = f! , (       d  f       g= f)a–  request performs an HTTP request and reads the entire response body.

:param str method: HTTP method to request (e.g. 'GET', 'POST')
:param str url: URL to request
:param read_limit: maximum number of bytes to read from the body, or None for no limit
:type read_limit: int or None
:param kwargs: optional arguments defined by yield_response
:return: Response object
:rtype: Response
:raises: HTTPException
N)
r	   Úreadr   ÚIOErrorÚstrr   ÚurlÚstatusÚ_prepare_incoming_headersÚheaders)Úmethodr   r   ÚkwargsÚresponseÚbodyÚes          ÚK/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pyright/_mureq.pyr
   r
      s‹   € ô 
˜Ñ	. vÒ	.°(ð	/Ø—=‘= Ó,ˆDô
 ˜Ÿ™ h§o¡oÔ7PÐQY×QaÑQaÓ7bÐdhÓi÷ 
/Ñ	.øô ó 	ØÜó 	/Ü¤ A£Ó'¨QÐ.ûð	/ú÷ 
/Õ	.ús-   �B�A 4BÁBÁ2BÂBÂBÂ
Br   r   Úreturnr   c                 ó   • [        SSU 0UD6$ )z!get performs an HTTP GET request.r   )ÚGET©r
   ©r   r   s     r   r   r   4   s   € äÑ,˜cÐ, VÑ,Ð,ó    c                 ó   • [        SXS.UD6$ )z#post performs an HTTP POST request.©r   r   )ÚPOSTr#   ©r   r   r   s      r   r   r   9   s   € äÐ8˜sÑ8°Ñ8Ð8r%   c                 ó   • [        SSU 0UD6$ )z#head performs an HTTP HEAD request.r   )ÚHEADr#   r$   s     r   r   r   >   s   € äÑ-˜sÐ- fÑ-Ð-r%   c                 ó   • [        SXS.UD6$ )z!put performs an HTTP PUT request.r'   )ÚPUTr#   r)   s      r   r   r   C   s   € äÐ7˜cÑ7°Ñ7Ð7r%   c                 ó   • [        SXS.UD6$ )z%patch performs an HTTP PATCH request.r'   )ÚPATCHr#   r)   s      r   r   r   H   s   € äÐ9 Ñ9°&Ñ9Ð9r%   c                 ó   • [        SSU 0UD6$ )z'delete performs an HTTP DELETE request.r   )ÚDELETEr#   r$   s     r   r   r   M   s   € äÑ/ Ð/¨Ñ/Ð/r%   T)Úunix_socketÚtimeoutr   Úparamsr   ÚformÚjsonÚverifyÚsource_addressÚmax_redirectsÚssl_contextc             #   ó¾  #   • U R                  5       n [        U5      n[        U5      n[        XgX„5      n/ nUb  [	        U5      U::  aÃ  [        XXÓX)X¬S9u  pnSnUR                  U5          UR                  U UXFS9  UR                  5       n[        UUR                  UR                  5      nUb  Uc  UUl        Uv •   UR!                  5         gUnUR                  S:X  a  Sn UR!                  5         Uc  M²  [	        U5      U::  a  MÃ  [#        U5      e! [         a    e [         a  n[        [        U5      5      UeSnAff = f! UR!                  5         f = f7f)aý  yield_response is a low-level API that exposes the actual
http.client.HTTPResponse via a contextmanager.

Note that unlike mureq.Response, http.client.HTTPResponse does not
automatically canonicalize multiple appearances of the same header by
joining them together with a comma delimiter. To retrieve canonicalized
headers from the response, use response.getheader():
https://docs.python.org/3/library/http.client.html#http.client.HTTPResponse.getheader

:param str method: HTTP method to request (e.g. 'GET', 'POST')
:param str url: URL to request
:param unix_socket: path to Unix domain socket to query, or None for a normal TCP request
:type unix_socket: str or None
:param timeout: timeout in seconds, or None for no timeout (default: 15 seconds)
:type timeout: float or None
:param headers: HTTP headers as a mapping or list of key-value pairs
:param params: parameters to be URL-encoded and added to the query string, as a mapping or list of key-value pairs
:param body: payload body of the request
:type body: bytes or None
:param form: parameters to be form-encoded and sent as the payload body, as a mapping or list of key-value pairs
:param json: object to be serialized as JSON and sent as the payload body
:param bool verify: whether to verify TLS certificates (default: True)
:param source_address: source address to bind to for TCP
:type source_address: str or tuple(str, int) or None
:param max_redirects: maximum number of redirects to follow, or None (the default) for no redirection
:type max_redirects: int or None
:param ssl_context: TLS config to control certificate validation, or None for default behavior
:type ssl_context: ssl.SSLContext or None
:return: http.client.HTTPResponse, yielded as context manager
:rtype: http.client.HTTPResponse
:raises: HTTPException
N)Ú
enc_paramsr3   r2   r7   r8   r:   Ú )r   r   é/  r"   )ÚupperÚ_prepare_outgoing_headersÚ_prepare_paramsÚ_prepare_bodyÚlenÚ_prepare_requestÚappendr
   Úgetresponser   r   r   Ú_check_redirectr   r   r   Úcloser   )r   r   r2   r3   r   r4   r   r5   r6   r7   r8   r9   r:   r<   Úvisited_urlsÚconnÚpathr   r   Úredirect_urls                       r   r	   r	   R   s`  é € ðH �\‰\‹^€FÜ'¨Ó0€GÜ  Ó(€JÜ˜ TÓ3€Dà€Là
Ñ
¤3 |Ó#4¸Ó#EÜ*¨6À:Ðlwð  Xfñ  @‰ˆ�4Øˆ
Ø×Ñ˜CÔ ð	ð3Ø—‘˜V T°7�ÑFØ×+Ñ+Ó-�ô +¨3°·±À×AQÑAQÓRˆLØÑ$¨Ñ(<Ø"�”Ø’Øð �J‰J�Lð #�Ø—?‘? cÓ)à"�Fà�J‰JŒLð3 Ó
¤3 |Ó#4¸Õ#Eô6 ˜<Ó
(Ð(øô' !ó ØÜó 3ô $¤C¨£FÓ+°Ð2ûð3ûð �J‰J�LüsT   ‚A)EÁ-!D Â2E ÃEÃE Ã&EÃ;EÄEÄEÄ+E Å EÅE ÅEÅEc                   óZ   • \ rS rSrSrSrS rS r\S 5       r	\S 5       r
S rS	 rS
 rSrg)r   é›   a  Response contains a completely consumed HTTP response.

:ivar str url: the retrieved URL, indicating whether a redirection occurred
:ivar int status_code: the HTTP status code
:ivar http.client.HTTPMessage headers: the HTTP headers
:ivar bytes body: the payload body of the response
©r   Ústatus_coder   r   c                 ó>   • XX44u  U l         U l        U l        U l        g ©NrO   )Úselfr   rP   r   r   s        r   Ú__init__ÚResponse.__init__¦   s   € Ø>AÐPWÐ>]Ñ;ˆŒ�$Ô" D¤L°$µ)r%   c                 ó$   • SU R                   S S3$ )NzResponse(status_code=ÚdÚ)©rP   ©rS   s    r   Ú__repr__ÚResponse.__repr__©   s   € Ø& t×'7Ñ'7¸Ð&:¸!Ð<Ð<r%   c                 óT   • SU R                   s=:*  =(       a
    S:  (       + $ s  (       + $ )z`ok returns whether the response had a successful status code
(anything other than a 40x or 50x).i�  iX  rY   rZ   s    r   ÚokÚResponse.ok¬   s)   € ð ˜4×+Ñ+×1Ó1¨cÑ1Ô2Ð2Ñ1Ô2Ð2r%   c                 ó   • U R                   $ )zqcontent returns the response body (the `body` member). This is an
alias for compatibility with requests.Response.)r   rZ   s    r   ÚcontentÚResponse.content²   s   € ð �y‰yÐr%   c                 óP   • U R                   (       d  [        U R                  5      eg)zZraise_for_status checks the response's success code, raising an
exception for error codes.N)r^   ÚHTTPErrorStatusrP   rZ   s    r   Úraise_for_statusÚResponse.raise_for_status¸   s!   € ð �w�wÜ! $×"2Ñ"2Ó3Ð3ð r%   c                 ó@   • SSK nUR                  U R                  5      $ )z@Attempts to deserialize the response body as UTF-8 encoded JSON.r   N)r6   Úloadsr   )rS   Újsonlibs     r   r6   ÚResponse.json¾   s   € ãØ�}‰}˜TŸY™YÓ'Ð'r%   c                 ó´  • [         R                  " 5       n[        SU R                  US9  U R                  R                  5        H  u  p#[        U SU 3US9  M     [        US9   [        U R                  R                  S5      US9  UR                  5       $ ! [         a3    [        S[        U R                  5       S3US9   UR                  5       $ f = f)NÚHTTP)Úfilez: úutf-8Ú<z bytes binary data>)ÚioÚStringIOÚprintrP   r   Úitemsr   ÚdecodeÚUnicodeDecodeErrorrC   Úgetvalue)rS   ÚbufÚkÚvs       r   Ú	_debugstrÚResponse._debugstrÃ   s¼   € Ü�kŠk‹mˆÜˆf�d×&Ñ&¨SÒ1Ø—L‘L×&Ñ&Ö(‰DˆAÜ�Q�C�r˜!˜�+ CÔ(ñ )ä�3Šð	EÜ�$—)‘)×"Ñ" 7Ó+°#Ò6ð �|‰|‹~Ðøô "ó 	EÜ�A”c˜$Ÿ)™)“nÐ%Ð%8Ð9ÀÓDØ�|‰|‹~Ðð	Eús   Á'#B Â+CÃC)r   r   rP   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú	__slots__rT   r[   Úpropertyr^   ra   re   r6   rz   Ú__static_attributes__© r%   r   r   r   ›   sP   † ñð :€Iò^ò=ð ñ3ó ð3ð
 ñó ðò
4ò(õ

r%   c                   ó   • \ rS rSrSrSrg)r   éÐ   zŠTooManyRedirects is raised when automatic following of redirects was
enabled, but the server redirected too many times without completing.r„   N)r|   r}   r~   r   r€   rƒ   r„   r%   r   r   r   Ð   s   † ñMâr%   r   c                   ó$   • \ rS rSrSrS rS rSrg)rd   éÖ   zîHTTPErrorStatus is raised by Response.raise_for_status() to indicate an
HTTP error code (a 40x or a 50x). Note that a well-formed response with an
error code does not result in an exception unless raise_for_status() is
called explicitly.
c                 ó   • Xl         g rR   rY   )rS   rP   s     r   rT   ÚHTTPErrorStatus.__init__Ý   s   € Ø&Õr%   c                 ó"   • SU R                   S 3$ )Nz"HTTP response returned error code rW   rY   rZ   s    r   Ú__str__ÚHTTPErrorStatus.__str__à   s   € Ø3°D×4DÑ4DÀQÐ3GÐHÐHr%   rY   N)r|   r}   r~   r   r€   rT   rŒ   rƒ   r„   r%   r   rd   rd   Ö   s   † ñò'õIr%   rd   zapplication/jsonz!application/x-www-form-urlencodedc                   ó8   ^ • \ rS rSrSr\4U 4S jjrS rSrU =r	$ )ÚUnixHTTPConnectionéê   zzUnixHTTPConnection is a subclass of HTTPConnection that connects to a
Unix domain stream socket instead of a TCP address.
c                 ó6   >• [         [        U ]  SUS9  Xl        g )NÚ	localhost©r3   )Úsuperr�   rT   Ú
_unix_path)rS   rK   r3   Ú	__class__s      €r   rT   ÚUnixHTTPConnection.__init__ï   s   ø€ ÜÔ  $Ñ0°ÀgÐ0ÑNØ�r%   c                 ó"  • [         R                   " [         R                  [         R                  5      n UR                  U R                  5        UR                  U R                  5        Xl	        g ! [         a    UR                  5         e f = frR   )
ÚsocketÚAF_UNIXÚSOCK_STREAMÚ
settimeoutr3   Úconnectr•   Ú	ExceptionrH   Úsock)rS   rŸ   s     r   r�   ÚUnixHTTPConnection.connectó   se   € Ü�}Š}œVŸ^™^¬V×-?Ñ-?Ó@ˆð	Ø�O‰O˜DŸL™LÔ)Ø�L‰L˜Ÿ™Ô)ð �	øô ó 	Ø�J‰JŒLØð	ús   µ6A2 Á2B)r•   rŸ   )
r|   r}   r~   r   r€   ÚDEFAULT_TIMEOUTrT   r�   rƒ   Ú__classcell__)r–   s   @r   r�   r�   ê   s   ø† ñð &5÷ ÷ð r%   r�   c                 ó  • US;  a  gUR                  S5      nU(       d  g[        R                  R                  U5      nUR                  (       a  U$ [        R                  R                  U 5      nUR                  S5      (       aa  [        R                  R                  UR                  UR                  UR                  UR                  UR                  UR                  45      $ [        R                  R                  UR                  5      u  pg[        R                  R                  Xc5      n[        R                  R                  UR                  UR                  X„R                  UR                  UR                  45      $ )z:Return the URL to redirect to, or None for no redirection.)i-  i.  r>   i3  i4  NÚLocationÚ/)r   ÚurllibÚparseÚurlparseÚschemeÚ
startswithÚ
urlunparseÚnetlocrK   r4   ÚqueryÚfragmentÚosÚsplitÚjoin)	r   r   Úresponse_headersÚlocationÚparsed_locationÚold_urlÚold_dirÚ	_old_fileÚnew_paths	            r   rG   rG   þ   s*  € àÐ.Ó.ØØ×#Ñ# JÓ/€HÞØÜ—l‘l×+Ñ+¨HÓ5€OØ××àˆä�l‰l×#Ñ# CÓ(€GØ×Ñ˜3×Ñä�|‰|×&Ñ&¨¯©¸¿¹Ø(7×(<Ñ(<¸o×>TÑ>TØ(7×(=Ñ(=¸×?WÑ?Wð(Yó Zð 	Zô
 Ÿ™Ÿ™ w§|¡|Ó4Ñ€GÜ�w‰w�|‰|˜GÓ.€HÜ�<‰<×"Ñ" G§N¡N°G·N±NØ$,×.DÑ.DØ$3×$9Ñ$9¸?×;SÑ;Sð$Uó Vð Vr%   c                 óþ   • U c  [        5       n O][        U [         5      (       dH  [        5       n[        U S5      (       a  U R                  5       nO[	        U 5      nU H	  u  p4XAU'   M     Un [        U S[        5        U $ )Nrs   z
User-Agent)r   Ú
isinstanceÚhasattrrs   ÚiterÚ_setdefault_headerÚ
DEFAULT_UA)r   Únew_headersÚiteratorrx   ry   s        r   r@   r@     sl   € Ø�Ü“-‰Ü˜¤×-Ñ-Ü!“mˆÜ�7˜G×$Ñ$Ø—}‘}“‰Hä˜G“}ˆHÛ‰DˆAØ˜‹Nñ àˆÜ�w ¬jÔ9Ø€Nr%   c                 óê   • 0 nU R                  5        H&  u  p#UR                  U/ 5      R                  U5        M(     [        5       nUR                  5        H  u  p%SR	                  U5      XB'   M     U$ )NÚ,)rs   Ú
setdefaultrE   r   r±   )r   Úheaders_dictrx   ry   ÚresultÚvlists         r   r   r   +  sf   € Ø€LØ—‘–‰ˆØ×Ñ  2Ó&×-Ñ-¨aÖ0ñ  ä‹]€Fð !×&Ñ&Ö(‰ˆØ—H‘H˜U“Oˆ‹	ñ )à€Mr%   c                 ó   • X;  a  X U'   g g rR   r„   )r   ÚnameÚvalues      r   r½   r½   7  s   € ØÓØ�Šð r%   c                 ó6  • U b,  [        U [        5      (       d  [        S[        U 5      5      eU $ Ub5  [	        US[
        5        SS KnUR                  U5      R                  S5      $ Ub/  [	        US[        5        [        R                  R                  USS9$ g )Nzbody must be bytes or NonezContent-Typer   rn   T©Údoseq)rº   ÚbytesÚ	TypeErrorÚtyper½   Ú_JSON_CONTENTTYPEr6   ÚdumpsÚencodeÚ_FORM_CONTENTTYPEr¦   r§   Ú	urlencode)r   r5   r6   r   ri   s        r   rB   rB   <  sŒ   € ØÑÜ˜$¤×&Ñ&ÜÐ8¼$¸t»*ÓEÐEØˆàÑÜ˜7 NÔ4EÔFÛØ�}‰}˜TÓ"×)Ñ)¨'Ó2Ð2àÑÜ˜7 NÔ4EÔFÜ�|‰|×%Ñ% d°$Ð%Ð7Ð7àr%   c                 óF   • U c  g[         R                  R                  U SS9$ )Nr=   TrË   )r¦   r§   rÔ   )r4   s    r   rA   rA   N  s$   € Ø�~ØÜ�<‰<×!Ñ! &°Ð!Ð5Ð5r%   r=   )r<   r3   r8   r2   r7   r:   c                ó.  • [         R                  R                  U5      nUSLn	UR                  R	                  5       n
U
R                  S5      (       a  U
SS n
Sn	U
S:X  a  [        S5      eU
S;  a  [        SU
5      eU
S:H  nUR                  nU(       a  S	OS
nUR                  (       a  UR                  nU	(       a,  Uc)  [         R                  R                  UR                  5      nUR                  nUR                  (       a.  U(       a  U SUR                   SU 3nO"U SUR                   3nOU(       a  U SU 3nO [        U[        5      (       a  US4nU	(       a
  [        XSS9nOXU(       aG  Uc8  [         R"                  " 5       nU(       d  SUl        [         R&                  Ul        [+        XÍXCUS9nO
[-        XÍXCS9n[         R                  R/                  UR                  UR                  XèR0                  SUR2                  45      nUXþ4$ )zGParses the URL, returns the path and the right HTTPConnection subclass.Nz+unixéûÿÿÿTÚhttpszhttps+unix is not implemented)ÚhttprØ   zunrecognized schemei»  éP   Ú?Ú&r   r“   F)r8   r3   Úcontext)r8   r3   r=   )r¦   r§   r¨   r©   ÚlowerÚendswithÚ
ValueErrorÚhostnameÚportÚunquoter¬   rK   r­   rº   r   r�   ÚsslÚcreate_default_contextÚcheck_hostnameÚ	CERT_NONEÚverify_moder   r   r«   r4   r®   )r   r   r<   r3   r8   r2   r7   r:   Ú
parsed_urlÚis_unixr©   Úis_httpsÚhostrâ   rK   rJ   Ú
munged_urls                    r   rD   rD   T  sê  € ä—‘×&Ñ& sÓ+€Jà $Ð&€GØ×Ñ×$Ñ$Ó&€FØ‡��w×ÑØ˜˜�ˆØˆØ�WÓÜÐ<Ó=Ð=àÐ&Ó&ÜÐ.°Ó7Ð7à˜'Ñ!€HØ×Ñ€DÞ‰3 €DØ‡‡Ø�‰ˆæ�;Ñ&Ü—l‘l×*Ñ*¨:×+<Ñ+<Ó=ˆà�?‰?€DØ××ÞØ�V˜1˜Z×-Ñ-Ð.¨a°
¨|Ð<‰Dà�V˜1˜Z×-Ñ-Ð.Ð/‰DæØ�V˜1˜Z˜LÐ)‰Dàä�.¤#×&Ñ&Ø(¨!Ð,ˆæÜ! +Ñ?‰Þ	ØÑÜ×4Ò4Ó6ˆKÞØ-2�Ô*Ü*-¯-©-�Ô'Ü˜t¸.Ø'2ñ4‰ô ˜d¸ÑYˆä—‘×(Ñ(¨*×*;Ñ*;¸Z×=NÑ=NØ*.×0AÑ0AØ*,¨j×.AÑ.Að*Có D€Jð �tÐ!Ð!r%   rR   )-r€   Ú
contextlibrp   Úos.pathr¯   r™   rä   ÚsysÚurllib.parser¦   Úhttp.clientr   r   r   r   Ú__version__Ú__all__r¡   Úversionr°   r¾   r
   r   Úobjectr   r   r   r   r   r   Úcontextmanagerr	   r   r   rd   rÐ   rÓ   r�   rG   r@   r   r½   rB   rA   rD   r„   r%   r   Ú<module>rø      sK  ðñó Û 	Û Û Û 
Û 
Û ß SÓ Sð €òY€ð €ð ˜Ÿ™×*Ñ*Ó,¨QÑ/Ñ/€
ð (,õ jð,-ˆSð -˜Fð - zô -ô
9ò
.ô
8ô
:ò
0ð
 ×ÑØ/3¸_ÐVZØ T°¸4ÈÐ]aØ!%°4ôE)ó ðE)÷P2ñ 2ôj	�}ô 	ôI�mô Ið  'Ð Ø7Ð ô˜ô ò(Vò6ò$	òò
ò$6ð 13¸OÐ\`ÐnrÐ{ð  NRö 7"r%   