Ë
    ùç<gÞ  ã                   óN   — d dl Z d dlmZ d dlmZ  G d„ d«      Z G d„ de«      Zy)é    N)ÚDesiredCapabilities)Ú
ArgOptionsc                   ó"   — e Zd ZdZd„ Zd„ Zd„ Zy)Ú_SafariOptionsDescriptora!  _SafariOptionsDescriptor is an implementation of Descriptor protocol:

    : Any look-up or assignment to the below attributes in `Options` class will be intercepted
    by `__get__` and `__set__` method respectively.

    - `automatic_inspection`
    - `automatic_profiling`
    - `use_technology_preview`

    : When an attribute lookup happens,
    Example:
        `self.automatic_inspection`
        `__get__` method does a dictionary look up in the dictionary `_caps` of `Options` class
        and returns the value of key `safari:automaticInspection`
    : When an attribute assignment happens,
    Example:
        `self.automatic_inspection` = True
        `__set__` method sets/updates the value of the key `safari:automaticInspection` in `_caps`
        dictionary in `Options` class.
    c                 ó    — || _         || _        y ©N)ÚnameÚexpected_type)Úselfr	   r
   s      úU/var/www/html/myenv/lib/python3.12/site-packages/selenium/webdriver/safari/options.pyÚ__init__z!_SafariOptionsDescriptor.__init__-   s   € ØˆŒ	Ø*ˆÕó    c                 óº   — | j                   dk(  r(|j                  j                  d«      | j                   k(  S |j                  j                  | j                   «      S )NúSafari Technology PreviewÚbrowserName)r	   Ú_capsÚget)r   ÚobjÚclss      r   Ú__get__z _SafariOptionsDescriptor.__get__1   sB   € Ø9‰9Ð3Ò3Ø—9‘9—=‘= Ó/°4·9±9Ñ<Ð<Øy‰y}‰}˜TŸY™YÓ'Ð'r   c                 ó  — t        || j                  «      s$t        | j                  › d| j                  › «      ‚| j                  dk(  r|r| j                  nd|j                  d<   y ||j                  | j                  <   y )Nz must be of type r   Úsafarir   )Ú
isinstancer
   Ú	TypeErrorr	   r   )r   r   Úvalues      r   Ú__set__z _SafariOptionsDescriptor.__set__6   si   € Ü˜% ×!3Ñ!3Ô4Ü˜tŸy™y˜kÐ):¸4×;MÑ;MÐ:NÐOÓPÐPØ9‰9Ð3Ò3Ù49 t§y¢y¸xˆCI‰ImÒ$à#(ˆCI‰Id—i‘iÒ r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   © r   r   r   r      s   „ ñò*+ò(ó
)r   r   c                   óˆ   — e Zd ZdZdZdZ eee«      Z	  eee«      Z		  eee«      Z
	 edej                  eef   fd„«       Zy)ÚOptionszsafari:automaticInspectionzsafari:automaticProfilingr   Úreturnc                 ó>   — t         j                  j                  «       S r   )r   ÚSAFARIÚcopy)r   s    r   Údefault_capabilitieszOptions.default_capabilitiesq   s   € ä"×)Ñ)×.Ñ.Ó0Ð0r   N)r   r   r   ÚAUTOMATIC_INSPECTIONÚAUTOMATIC_PROFILINGÚSAFARI_TECH_PREVIEWr   ÚboolÚautomatic_inspectionÚautomatic_profilingÚuse_technology_previewÚpropertyÚtypingÚDictÚstrr(   r!   r   r   r#   r#   ?   s{   „ à7ÐØ5ÐØ5Ðñ 4Ð4HÈ$ÓOÐðñ 3Ð3FÈÓMÐðñ 6Ð6IÈ4ÓPÐðð ð1 f§k¡k°#°s°(Ñ&;ò 1ó ñ1r   r#   )r1   Ú.selenium.webdriver.common.desired_capabilitiesr   Ú!selenium.webdriver.common.optionsr   r   r#   r!   r   r   ú<module>r6      s'   ðó" å NÝ 8÷%)ñ %)ôP41ˆjõ 41r   