
    i                         S SK r S SKrS SKrS SKJr  S SKJr  S SKJr  S SK	r	S SK
JrJr   " S S\5      r " S S	5      r " S
 S5      rg)    N)Enum)Optional)parse)Proxy	ProxyTypec                        \ rS rSrSrSrSrSrg)AuthType   BasicBearerz	X-API-Key N)__name__
__module____qualname____firstlineno__BASICBEARER	X_API_KEY__static_attributes__r       TC:\des-py\RoboSAPF\venv\Lib\site-packages\selenium\webdriver\remote\client_config.pyr	   r	      s    EFIr   r	   c                   *    \ rS rSrS rS rSS jrSrg)_ClientConfigDescriptor$   c                     Xl         g Nname)selfr   s     r   __init__ _ClientConfigDescriptor.__init__%   s    	r   c                 4    UR                   U R                     $ r   __dict__r   )r   objclss      r   __get___ClientConfigDescriptor.__get__(   s    ||DII&&r   Nc                 4    X!R                   U R                  '   g r   r#   )r   r%   values      r   __set___ClientConfigDescriptor.__set__+   s    "'TYYr   r   returnN)r   r   r   r   r    r'   r+   r   r   r   r   r   r   $   s    '(r   r   c            !       F   \ rS rSr\" S5      r \" S5      r \" S5      r \" S5      r \" S5      r	 \" S5      r
 \" S5      r \" S	5      r \" S
5      r \" S5      r \" S5      r \" S5      r \" S5      r \" S5      r \" S5      r S\" S\R,                  0S9SSSSSS\R0                  SSSSS4S\S\\   S\\   S\\   S\\   S\\   S\\   S\\   S \\   S!\\   S"\\   S#\\   S$\\   S%\\   S&\\   S'S4 S( jjrS-S) jr S'\\   4S* jr!S'\\   4S+ jr"S,r#g).ClientConfig/   _remote_server_addr_keep_alive_proxy_ignore_certificates_init_args_for_pool_manager_timeout	_ca_certs	_username	_password
_auth_type_token_user_agent_extra_headers_websocket_timeout_websocket_intervalT	proxyType)rawFNg      >@g?remote_server_addr
keep_aliveproxyignore_certificatesinit_args_for_pool_managertimeoutca_certsusernamepassword	auth_typetoken
user_agentextra_headerswebsocket_timeoutwebsocket_intervalr.   c                    Xl         X l        X0l        X@l        U=(       d    0 U l        Uc  [
        R                  " 5       OUU l        Xl        Xl	        Xl
        Xl        Xl        Xl        Xl        Xl        UcL  S[         R"                  ;   a  [         R$                  " S5      U l        g [&        R(                  " 5        U l        g UU l        g )NREQUESTS_CA_BUNDLE)rC   rD   rE   rF   rG   socketgetdefaulttimeoutrH   rJ   rK   rL   rM   rN   rO   rP   rQ   osenvirongetenvcertifiwhererI   )r   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   s                   r   r    ClientConfig.__init__O   s    $ #5$
#6 *D*J'5<_v//1'  "
$*!2"4  1E

0RRYY+, 	X_XeXeXg 	  	r   c                 8    [         R                  " 5       U l        g)z2Resets the timeout to the default value of socket.N)rT   rU   r7   )r   s    r   reset_timeoutClientConfig.reset_timeoutv   s    002r   c                 F   U R                   R                  n[        R                  " U R                  5      nU[
        R                  L a  gU[
        R                  L Gad  [        R                  R                  S[        R                  R                  S5      5      nU(       a  [        [        R                  UR                  S5      5       Hj  nUS:X  a    g[        R                  " U5      nUR                  (       a  UR                  UR                  :X  a    gUR                   UR                  ;   d  Mj    g   [        R                  R                  U R                  R#                  S5      (       a  SOS[        R                  R                  U R                  R#                  S5      (       a
  S	5      5      $ S
5      5      $ U[
        R$                  L aL  U R                  R#                  S5      (       a  U R                   R&                  $ U R                   R(                  $ g)z0Returns the proxy URL to use for the connection.Nno_proxyNO_PROXY,*zhttps://https_proxy
http_proxyHTTPS_PROXY
HTTP_PROXY)rE   
proxy_typer   urlparserC   r   DIRECTSYSTEMrV   rW   getmapstrstripsplitnetlocpath
startswithMANUALsslProxyre   )r   rh   
remote_add	_no_proxyentryn_urls         r   get_proxy_urlClientConfig.get_proxy_urlz   s   ZZ**
^^D$;$;<
))))))

z2::>>*3MNI IOOC,@AE|#!NN51E||
(9(9U\\(I#zzZ%6%66# B ::>>!%!8!8!C!CJ!O!OUa

0G0G0R0RS]0^0^}q dpq  )))*.*A*A*L*LZ*X*X4::&&s^b^h^h^s^ssr   c                    U R                   [        R                  L a  U R                  (       a  U R                  (       ap  U R                   SU R                   3n[
        R                  " UR                  S5      5      R                  S5      nS[        R                  R                   SU 30$ U R                   [        R                  L a<  U R                  (       a+  S[        R                  R                   SU R                   30$ U R                   [        R                  L a9  U R                  (       a(  [        R                  R                   U R                   0$ g)z8Returns the authorization to add to the request headers.:zutf-8Authorization N)rL   r	   r   rJ   rK   base64	b64encodeencodedecoder*   r   rM   r   )r   credentialsencoded_credentialss      r   get_auth_headerClientConfig.get_auth_header   s    >>X^^+$--!]]O1T]]O<K"("2"2;3E3Eg3N"O"V"VW^"_#(<(<'=Q?R>S%TUU>>X__,#(=(='>a

|%LMM>>X///DJJ))//0djj\CCr   )r7   rL   rI   rO   rF   rG   rD   rK   rE   rC   rH   rM   rN   rJ   rQ   rP   r-   )$r   r   r   r   r   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   r   r   rk   r	   r   rn   r   booldictintfloatr    r]   rz   r   r   r   r   r   r0   r0   /   s   01FG&(7J)#H-EP12HI;!89V!W5%j1G_&{3H>&{3HQ&{3HQ'5IH#H-EO(7JF+,<=MA/0DEq01FGr
 &*!&K9I9I+J!K.359!%"&"&"&(0#$((,-1.1!%
%
 TN%
 	%

 &d^%
 %-TN%
 #%
 3-%
 3-%
 3-%
 H%%
 }%
 SM%
  ~%
 $E?%
  %UO!%
" 
#%
N3x} 2
$ 
r   r0   )r   rV   rT   enumr   typingr   urllibr   rY   selenium.webdriver.common.proxyr   r   r	   r   r0   r   r   r   <module>r      sA   $  	      <t ( (n nr   