
    'h                     ~    S SK JrJrJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  S SKJr   " S S5      r " S	 S
\	5      rg)    )AnyOptionalUnion)
deprecated)DesiredCapabilities)
ArgOptions)FirefoxBinary)FirefoxProfilec                   ,    \ rS rSrSS jrS\4S jrSrg)Log   returnNc                     S U l         g Nlevelselfs    k/var/www/home/psychics-availability/venv/lib/python3.13/site-packages/selenium/webdriver/firefox/options.py__init__Log.__init__   s	    
    c                 H    U R                   (       a  SSU R                   00$ 0 $ )Nlogr   r   r   s    r   to_capabilitiesLog.to_capabilities   s"    ::GTZZ011	r   r   r   N)__name__
__module____qualname____firstlineno__r   dictr   __static_attributes__ r   r   r   r      s     r   r   c                     ^  \ rS rSrSrSU 4S jjr\\" S5      S\4S j5       5       r	\	R                  \" S5      S\\\4   SS4S	 j5       5       r	\S\4S
 j5       r\R                  S\SS4S j5       r\S\4S j5       rS\S\\\\4   4S jr\S\\   4S j5       r\R                  S\\\4   SS4S j5       r SS\\   4U 4S jjjrS\4S jr\S\4S j5       rSrU =r$ )Options%   zmoz:firefoxOptionsr   Nc                    > [         TU ]  5         SU l        0 U l        SU R                  S'   S U l        [        5       U l        g )N    zremote.active-protocols)superr   _binary_location_preferences_profiler   r   )r   	__class__s    r   r   Options.__init__(   sA     ""$ 8934265r   zuse binary_location insteadc                 ,    [        U R                  5      $ )z#Returns the FirefoxBinary instance.)r	   r,   r   s    r   binaryOptions.binary2   s     T2233r   
new_binaryc                 f    [        U[        5      (       a  UR                  n[        U5      U l        g)zTSets location of the browser binary, either by string or
``FirefoxBinary`` instance.N)
isinstancer	   
_start_cmdstrbinary_location)r   r4   s     r   r2   r3   8   s(    
 j-00#..J":r   c                     U R                   $ )z%:Returns: The location of the binary.)r,   r   s    r   r9   Options.binary_locationA   s     $$$r   valuec                 d    [        U[        5      (       d  [        U R                  5      eXl        g)z2Sets the location of the browser binary by string.N)r6   r8   	TypeErrorBINARY_LOCATION_ERRORr,   )r   r<   s     r   r9   r;   F   s(     %%%D6677 %r   c                     U R                   $ )z :Returns: A dict of preferences.r-   r   s    r   preferencesOptions.preferencesM   s        r   namec                      X R                   U'   g)zSets a preference.NrA   )r   rD   r<   s      r   set_preferenceOptions.set_preferenceR   s    "'$r   c                     U R                   $ )z%:Returns: The Firefox profile to use.)r.   r   s    r   profileOptions.profileV   s     }}r   new_profilec                 P    [        U[        5      (       d  [        U5      nXl        g)zTSets location of the browser profile to use, either by string or
``FirefoxProfile``.N)r6   r
   r.   )r   rK   s     r   rI   rJ   [   s      +~66(5K#r   android_packagec                 &   > [         TU ]  XU5        g r   )r+   enable_mobile)r   rM   android_activitydevice_serialr/   s       r   rO   Options.enable_mobilec   s     	oOr   c                    U R                   n0 nU R                  (       a  U R                  US'   U R                  (       a  U R                  US'   U R                  (       a  U R                  R                  US'   U R
                  (       a  U R
                  US'   U R                  (       a  UR                  U R                  5        UR                  U R                  R                  5       5        U(       a  X![        R                  '   U$ )z>Marshals the Firefox options to a `moz:firefoxOptions` object.r2   prefsrI   args)_capsr,   r-   r.   encoded
_argumentsmobile_optionsupdater   r   r&   KEY)r   capsoptss      r   r   Options.to_capabilitiesh   s     zz!  !22DN --DM=="mm33DO????DLKK++,DHH,,./ $r   c                 >    [         R                  R                  5       $ r   )r   FIREFOXcopyr   s    r   default_capabilitiesOptions.default_capabilities   s    "**//11r   )r,   r-   r.   r9   r   r   )zorg.mozilla.firefoxNN)r   r   r    r!   r[   r   propertyr   r	   r2   setterr   r8   r9   r"   rB   intboolrF   r   r
   rI   rO   r   rb   r#   __classcell__)r/   s   @r   r&   r&   %   s   
C -.4 4 / 4 ]]-./sM'9!: /t / / / % % % &S &T & & !T ! !(3 (uS#t^/D ( .1   ^^$5n)<#= $$ $ $ lpP'}P P
 6 2d 2 2r   r&   N)typingr   r   r   typing_extensionsr   .selenium.webdriver.common.desired_capabilitiesr   !selenium.webdriver.common.optionsr   )selenium.webdriver.firefox.firefox_binaryr	   *selenium.webdriver.firefox.firefox_profiler
   r   r&   r$   r   r   <module>ro      s4   " ( ' ( N 8 C E `2j `2r   