§
    ¯õi~!  ã                   ót   — d dl mZmZmZ d dlmZ  G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Zd	S )
é    )ÚAnyÚOptionalÚUnion)Úcommand_builderc                   ó  — e Zd ZdZ	 	 	 	 	 ddedededee         dee         d	ee         d
ee         fd„Zed„ ¦   «         Zej	        d„ ¦   «         Zed„ ¦   «         Z
e
j	        d„ ¦   «         Z
ed„ ¦   «         Zej	        d„ ¦   «         Zed„ ¦   «         Zej	        d„ ¦   «         Zed„ ¦   «         Zej	        d„ ¦   «         Zed„ ¦   «         Zej	        d„ ¦   «         Zed„ ¦   «         Zej	        d„ ¦   «         Zdeeeedf         f         fd„ZdS )ÚGeolocationCoordinatesz#Represents geolocation coordinates.ç      ð?NÚlatitudeÚ	longitudeÚaccuracyÚaltitudeÚaltitude_accuracyÚheadingÚspeedc                 óh   — || _         || _        || _        || _        || _        || _        || _        dS )aí  Initialize GeolocationCoordinates.

        Parameters:
        -----------
            latitude: Latitude coordinate (-90.0 to 90.0).
            longitude: Longitude coordinate (-180.0 to 180.0).
            accuracy: Accuracy in meters (>= 0.0), defaults to 1.0.
            altitude: Altitude in meters or None, defaults to None.
            altitude_accuracy: Altitude accuracy in meters (>= 0.0) or None, defaults to None.
            heading: Heading in degrees (0.0 to 360.0) or None, defaults to None.
            speed: Speed in meters per second (>= 0.0) or None, defaults to None.

        Raises:
        ------
            ValueError: If coordinates are out of valid range or if altitude_accuracy is provided without altitude.
        N©r
   r   r   r   r   r   r   )Úselfr
   r   r   r   r   r   r   s           út/var/www/html/nodeJS/PythonScripts/venv3.11/lib/python3.11/site-packages/selenium/webdriver/common/bidi/emulation.pyÚ__init__zGeolocationCoordinates.__init__   s:   € ð4 !ˆŒØ"ˆŒØ ˆŒØ ˆŒØ!2ˆÔØˆŒØˆŒ
ˆ
ˆ
ó    c                 ó   — | j         S ©N)Ú	_latitude©r   s    r   r
   zGeolocationCoordinates.latitude<   ó
   € àŒ~Ðr   c                 óP   — d|cxk    rdk    sn t          d¦  «        ‚|| _        d S )Ng     €VÀg     €V@z'latitude must be between -90.0 and 90.0)Ú
ValueErrorr   ©r   Úvalues     r   r
   zGeolocationCoordinates.latitude@   s;   € à˜Ð&Ð&Ò&Ð& $Ò&Ð&Ð&Ð&ÝÐFÑGÔGÐGØˆŒˆˆr   c                 ó   — | j         S r   )Ú
_longituder   s    r   r   z GeolocationCoordinates.longitudeF   s
   € àŒÐr   c                 óP   — d|cxk    rdk    sn t          d¦  «        ‚|| _        d S )Ng     €fÀg     €f@z*longitude must be between -180.0 and 180.0)r   r!   r   s     r   r   z GeolocationCoordinates.longitudeJ   s;   € à˜%Ð(Ð(Ò(Ð( 5Ò(Ð(Ð(Ð(ÝÐIÑJÔJÐJØˆŒˆˆr   c                 ó   — | j         S r   )Ú	_accuracyr   s    r   r   zGeolocationCoordinates.accuracyP   r   r   c                 ó>   — |dk     rt          d¦  «        ‚|| _        d S )Nç        zaccuracy must be >= 0.0)r   r$   r   s     r   r   zGeolocationCoordinates.accuracyT   s%   € à�3Š;ˆ;ÝÐ6Ñ7Ô7Ð7ØˆŒˆˆr   c                 ó   — | j         S r   ©Ú	_altituder   s    r   r   zGeolocationCoordinates.altitudeZ   r   r   c                 ó   — || _         d S r   r(   r   s     r   r   zGeolocationCoordinates.altitude^   s   € àˆŒˆˆr   c                 ó   — | j         S r   )Ú_altitude_accuracyr   s    r   r   z(GeolocationCoordinates.altitude_accuracyb   s   € àÔ&Ð&r   c                 ór   — |�| j         €t          d¦  «        ‚|�|dk     rt          d¦  «        ‚|| _        d S )Nz0altitude_accuracy cannot be set without altituder&   z altitude_accuracy must be >= 0.0)r   r   r,   r   s     r   r   z(GeolocationCoordinates.altitude_accuracyf   sI   € àÐ ¤Ð!6ÝÐOÑPÔPÐPØÐ ¨¢ ÝÐ?Ñ@Ô@Ð@Ø"'ˆÔÐÐr   c                 ó   — | j         S r   )Ú_headingr   s    r   r   zGeolocationCoordinates.headingn   s
   € àŒ}Ðr   c                 óT   — |�d|cxk    rdk     sn t          d¦  «        ‚|| _        d S )Nr&   g     €v@z%heading must be between 0.0 and 360.0)r   r/   r   s     r   r   zGeolocationCoordinates.headingr   s@   € àÐ c¨UÐ&:Ð&:Ò&:Ð&:°UÒ&:Ð&:Ð&:Ð&:ÝÐDÑEÔEÐEØˆŒˆˆr   c                 ó   — | j         S r   )Ú_speedr   s    r   r   zGeolocationCoordinates.speedx   s
   € àŒ{Ðr   c                 óB   — |�|dk     rt          d¦  «        ‚|| _        d S )Nr&   zspeed must be >= 0.0)r   r2   r   s     r   r   zGeolocationCoordinates.speed|   s*   € àÐ ¨¢ ÝÐ3Ñ4Ô4Ð4ØˆŒˆˆr   Úreturnc                 ó¸   — | j         | j        | j        dœ}| j        �
| j        |d<   | j        �
| j        |d<   | j        �
| j        |d<   | j        �
| j        |d<   |S )N)r
   r   r   r   ÚaltitudeAccuracyr   r   r   )r   Úresults     r   Úto_dictzGeolocationCoordinates.to_dict‚   sv   € àœØœØœð1
ð 1
ˆð Œ=Ð$Ø!%¤ˆF�:ÑàÔ!Ð-Ø)-Ô)?ˆFÐ%Ñ&àŒ<Ð#Ø $¤ˆF�9ÑàŒ:Ð!Ø"œjˆF�7‰Oàˆr   )r	   NNNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úfloatr   r   Úpropertyr
   Úsetterr   r   r   r   r   r   ÚdictÚstrr   r8   © r   r   r   r      sS  € € € € € Ø-Ð-ð Ø$(Ø-1Ø#'Ø!%ð ð  àð ð ð ð ð	 ð
 ˜5”/ð ð $ Eœ?ð ð ˜%”ð ð ˜Œð ð  ð  ð  ðD ðð ñ „Xðð „_ðð ñ „_ðð
 ðð ñ „Xðð Ôð ð  ñ Ôð ð
 ðð ñ „Xðð „_ðð ñ „_ðð
 ðð ñ „Xðð „_ðð ñ „_ðð ð'ð 'ñ „Xð'ð Ôð(ð (ñ Ôð(ð ðð ñ „Xðð „^ðð ñ „^ðð
 ðð ñ „Xðð „\ðð ñ „\ðð
˜˜c 5¨°¨Ô#5Ð5Ô6ð ð ð ð ð ð r   r   c                   óB   — e Zd ZdZdZefdefd„Zdeeef         fd„ZdS )ÚGeolocationPositionErrorz(Represents a geolocation position error.ÚpositionUnavailableÚtypec                 óZ   — || j         k    rt          d| j         › d�¦  «        ‚|| _        d S )Nztype must be "ú")ÚTYPE_POSITION_UNAVAILABLEr   rF   )r   rF   s     r   r   z!GeolocationPositionError.__init__�   s8   € Ø�4Ô1Ò1Ð1ÝÐO¨dÔ.LÐOÐOÐOÑPÔPÐPØˆŒ	ˆ	ˆ	r   r4   c                 ó   — d| j         iS )NrF   )rF   r   s    r   r8   z GeolocationPositionError.to_dict¢   s   € Ø˜œ	Ð"Ð"r   N)	r9   r:   r;   r<   rI   rA   r   r@   r8   rB   r   r   rD   rD   ˜   sf   € € € € € Ø2Ð2à 5Ðà#<ð ð ˜Sð ð ð ð ð
#˜˜c 3˜hœð #ð #ð #ð #ð #ð #r   rD   c                   óâ   — e Zd ZdZd„ Z	 	 	 	 ddee         dee         deee	                  deee	                  ddf
d	„Z
	 	 	 dd
ee	         deee	                  deee	                  ddfd„ZdS )Ú	Emulationz6
    BiDi implementation of the emulation module.
    c                 ó   — || _         d S r   )Úconn)r   rN   s     r   r   zEmulation.__init__«   s   € ØˆŒ	ˆ	ˆ	r   NÚcoordinatesÚerrorÚcontextsÚuser_contextsr4   c                 óP  — |�|�t          d¦  «        ‚|�|�t          d¦  «        ‚|€|€t          d¦  «        ‚i }|�|                     ¦   «         |d<   n|�|                     ¦   «         |d<   |�||d<   n|�||d<   | j                             t	          d	|¦  «        ¦  «         dS )
a‹  Set geolocation override for the given contexts or user contexts.

        Parameters:
        -----------
            coordinates: Geolocation coordinates to emulate, or None.
            error: Geolocation error to emulate, or None.
            contexts: List of browsing context IDs to apply the override to.
            user_contexts: List of user context IDs to apply the override to.

        Raises:
        ------
            ValueError: If both coordinates and error are provided, or if both contexts
                       and user_contexts are provided, or if neither contexts nor
                       user_contexts are provided.
        Nz)Cannot specify both coordinates and errorz-Cannot specify both contexts and userContextsz,Must specify either contexts or userContextsrO   rP   rQ   ÚuserContextsz emulation.setGeolocationOverride)r   r8   rN   Úexecuter   )r   rO   rP   rQ   rR   Úparamss         r   Úset_geolocation_overridez"Emulation.set_geolocation_override®   s×   € ð, Ð" uÐ'8ÝÐHÑIÔIÐIàÐ MÐ$=ÝÐLÑMÔMÐMàÐ Ð 5ÝÐKÑLÔLÐLà!#ˆàÐ"Ø$/×$7Ò$7Ñ$9Ô$9ˆF�=Ñ!Ð!ØÐØ#Ÿmšm™oœoˆF�7‰OàÐØ!)ˆF�:ÑÐØÐ&Ø%2ˆF�>Ñ"àŒ	×Ò�/Ð*LÈfÑUÔUÑVÔVÐVÐVÐVr   Útimezonec                 óÈ   — |�|�t          d¦  «        ‚|€|€t          d¦  «        ‚d|i}|�||d<   n|�||d<   | j                             t          d|¦  «        ¦  «         dS )aU  Set timezone override for the given contexts or user contexts.

        Parameters:
        -----------
            timezone: Timezone identifier (IANA timezone name or offset string like '+01:00'),
                     or None to clear the override.
            contexts: List of browsing context IDs to apply the override to.
            user_contexts: List of user context IDs to apply the override to.

        Raises:
        ------
            ValueError: If both contexts and user_contexts are provided, or if neither
                       contexts nor user_contexts are provided.
        Nz.Cannot specify both contexts and user_contextsz-Must specify either contexts or user_contextsrX   rQ   rT   zemulation.setTimezoneOverride)r   rN   rU   r   )r   rX   rQ   rR   rV   s        r   Úset_timezone_overridezEmulation.set_timezone_overrideÛ   sŒ   € ð( Ð MÐ$=ÝÐMÑNÔNÐNàÐ Ð 5ÝÐLÑMÔMÐMà",¨hÐ!7ˆàÐØ!)ˆF�:ÑÐØÐ&Ø%2ˆF�>Ñ"àŒ	×Ò�/Ð*IÈ6ÑRÔRÑSÔSÐSÐSÐSr   )NNNN)NNN)r9   r:   r;   r<   r   r   r   rD   ÚlistrA   rW   rZ   rB   r   r   rL   rL   ¦   s  € € € € € ðð ðð ð ð
 9=Ø48Ø(,Ø-1ð+Wð +WàÐ4Ô5ð+Wð Ð0Ô1ð+Wð ˜4 œ9Ô%ð	+Wð
    S¤	Ô*ð+Wð 
ð+Wð +Wð +Wð +Wð^ #'Ø(,Ø-1ð	!Tð !Tà˜3”-ð!Tð ˜4 œ9Ô%ð!Tð    S¤	Ô*ð	!Tð
 
ð!Tð !Tð !Tð !Tð !Tð !Tr   rL   N)	Útypingr   r   r   Ú%selenium.webdriver.common.bidi.commonr   r   rD   rL   rB   r   r   ú<module>r^      sÖ   ðð$ (Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'à AÐ AÐ AÐ AÐ AÐ Að~ð ~ð ~ð ~ð ~ñ ~ô ~ð ~ðB#ð #ð #ð #ð #ñ #ô #ð #ðVTð VTð VTð VTð VTñ VTô VTð VTð VTð VTr   