
     f                       d dl mZ ddlmZmZ d dlmZ d dlZd dlZ G d de	          Z
 G d d	e          Ze G d
 d                      Ze G d d                      Ze G d d                      Ze G d d                      Ze G d d                      Zd'dZd'dZ ed          e G d d                                  Z ed          e G d d                                  Z ed          e G d d                                   Z ed!          e G d" d#                                  Z ed$          e G d% d&                                  ZdS )(    )annotations   )event_classT_JSON_DICT)	dataclassNc                  B     e Zd ZdZddZed	d            Z fdZ xZS )
PlayerIdzI
    Players will get an ID that is unique within the agent context.
    returnstrc                    | S N selfs    p/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/selenium/webdriver/common/devtools/v126/media.pyto_jsonzPlayerId.to_json           jsonc                     | |          S r   r   clsr   s     r   	from_jsonzPlayerId.from_json       s4yyr   c                j    d                     t                                                                S )NzPlayerId({})formatsuper__repr__r   	__class__s    r   r   zPlayerId.__repr__   s'    $$UWW%5%5%7%7888r   )r
   r   )r   r   r
   r	   )	__name__
__module____qualname____doc__r   classmethodr   r   __classcell__r!   s   @r   r	   r	      sv                [9 9 9 9 9 9 9 9 9r   r	   c                  >     e Zd ZddZedd            Z fdZ xZS )		Timestampr
   floatc                    | S r   r   r   s    r   r   zTimestamp.to_json   r   r   r   c                     | |          S r   r   r   s     r   r   zTimestamp.from_json    r   r   c                j    d                     t                                                                S )NzTimestamp({})r   r    s    r   r   zTimestamp.__repr__$   s'    %%egg&6&6&8&8999r   )r
   r+   )r   r+   r
   r*   )r"   r#   r$   r   r&   r   r   r'   r(   s   @r   r*   r*      sl               [: : : : : : : : :r   r*   c                  D    e Zd ZU dZded<   ded<   d Zed             ZdS )PlayerMessagezU
    Have one type per entry in MediaLogRecord::Type
    Corresponds to kMessage
    r   levelmessagec                J    t                      }| j        |d<   | j        |d<   |S )Nr1   r2   )dictr1   r2   r   r   s     r   r   zPlayerMessage.to_json;   s&    vv
W,Yr   c                h     | t          |d                   t          |d                             S )Nr1   r2   )r1   r2   r   r   s     r   r   zPlayerMessage.from_jsonA   s9    sd7m$$Y((
 
 
 	
r   Nr"   r#   r$   r%   __annotations__r   r&   r   r   r   r   r0   r0   (   s^           JJJLLL   
 
 [
 
 
r   r0   c                  D    e Zd ZU dZded<   ded<   d Zed             ZdS )PlayerPropertyz-
    Corresponds to kMediaPropertyChange
    r   namevaluec                J    t                      }| j        |d<   | j        |d<   |S )Nr<   r=   )r4   r<   r=   r5   s     r   r   zPlayerProperty.to_jsonR   s&    vvyV
Wr   c                h     | t          |d                   t          |d                             S )Nr<   r=   )r<   r=   r7   r   s     r   r   zPlayerProperty.from_jsonX   s9    sT&\""d7m$$
 
 
 	
r   Nr8   r   r   r   r;   r;   I   s^           IIIJJJ   
 
 [
 
 
r   r;   c                  D    e Zd ZU dZded<   ded<   d Zed             ZdS )	PlayerEventz-
    Corresponds to kMediaEventTriggered
    r*   	timestampr   r=   c                n    t                      }| j                                        |d<   | j        |d<   |S )NrB   r=   )r4   rB   r   r=   r5   s     r   r   zPlayerEvent.to_jsoni   s3    vv N2244[
Wr   c                ~     | t                               |d                   t          |d                             S )NrB   r=   )rB   r=   )r*   r   r   r   s     r   r   zPlayerEvent.from_jsono   s@    s))${*;<<d7m$$
 
 
 	
r   Nr8   r   r   r   rA   rA   `   sa           JJJ   
 
 [
 
 
r   rA   c                  D    e Zd ZU dZded<   ded<   d Zed             ZdS )	PlayerErrorSourceLocationz
    Represents logged source line numbers reported in an error.
    NOTE: file and line are from chromium c++ implementation code, not js.
    r   fileintlinec                J    t                      }| j        |d<   | j        |d<   |S )NrG   rI   )r4   rG   rI   r5   s     r   r   z!PlayerErrorSourceLocation.to_json   s&    vvyVyVr   c                h     | t          |d                   t          |d                             S )NrG   rI   )rG   rI   )r   rH   r   s     r   r   z#PlayerErrorSourceLocation.from_json   s9    sT&\""T&\""
 
 
 	
r   Nr8   r   r   r   rF   rF   w   s^           IIIIII   
 
 [
 
 
r   rF   c                  b    e Zd ZU dZded<   ded<   ded<   ded	<   d
ed<   d Zed             ZdS )PlayerErrorz$
    Corresponds to kMediaError
    r   
error_typerH   codez&typing.List[PlayerErrorSourceLocation]stacktyping.List[PlayerError]causer4   datac                    t                      }| j        |d<   | j        |d<   d | j        D             |d<   d | j        D             |d<   | j        |d<   |S )N	errorTyperO   c                6    g | ]}|                                 S r   r   .0is     r   
<listcomp>z'PlayerError.to_json.<locals>.<listcomp>        999999r   rP   c                6    g | ]}|                                 S r   rW   rX   s     r   r[   z'PlayerError.to_json.<locals>.<listcomp>   r\   r   rR   rS   )r4   rN   rO   rP   rR   rS   r5   s     r   r   zPlayerError.to_json   sd    vv O[yV99dj999W99dj999WyVr   c           
          | t          |d                   t          |d                   d |d         D             d |d         D             t          |d                             S )	NrU   rO   c                B    g | ]}t                               |          S r   )rF   r   rX   s     r   r[   z)PlayerError.from_json.<locals>.<listcomp>   s'    QQQa,66q99QQQr   rP   c                B    g | ]}t                               |          S r   rM   r   rX   s     r   r[   z)PlayerError.from_json.<locals>.<listcomp>   s&    CCC;((++CCCr   rR   rS   )rN   rO   rP   rR   rS   )r   rH   r4   r   s     r   r   zPlayerError.from_json   ss    s4,--T&\""QQ4=QQQCCT']CCCd6l##
 
 
 	
r   Nr8   r   r   r   rM   rM      s           OOO III 2111 $### JJJ   
 
 [
 
 
r   rM   r
   0typing.Generator[T_JSON_DICT, T_JSON_DICT, None]c               #     K   ddi} | V }dS )z"
    Enables the Media domain
    methodzMedia.enableNr   cmd_dictr   s     r   enablerg      s#      
 	.H >>DDDr   c               #     K   ddi} | V }dS )z$
    Disables the Media domain.
    rd   zMedia.disableNr   re   s     r   disableri      s#      
 	/H >>DDDr   zMedia.playerPropertiesChangedc                  @    e Zd ZU dZded<   ded<   edd	            Zd
S )PlayerPropertiesChangedz
    This can be called multiple times, and can be used to set / override /
    remove player properties. A null propValue indicates removal.
    r	   	player_idztyping.List[PlayerProperty]
propertiesr   r   r
   c                x     | t                               |d                   d |d         D                       S )NplayerIdc                B    g | ]}t                               |          S r   )r;   r   rX   s     r   r[   z5PlayerPropertiesChanged.from_json.<locals>.<listcomp>   s&    PPP0033PPPr   rm   )rl   rm   r	   r   r   s     r   r   z!PlayerPropertiesChanged.from_json   sG    s((j)9::PPT,=OPPP
 
 
 	
r   N)r   r   r
   rk   r"   r#   r$   r%   r9   r&   r   r   r   r   rk   rk      sX           ++++
 
 
 [
 
 
r   rk   zMedia.playerEventsAddedc                  @    e Zd ZU dZded<   ded<   edd	            Zd
S )PlayerEventsAddedz
    Send events as a list, allowing them to be batched on the browser for less
    congestion. If batched, events must ALWAYS be in chronological order.
    r	   rl   ztyping.List[PlayerEvent]eventsr   r   r
   c                x     | t                               |d                   d |d         D                       S )Nro   c                B    g | ]}t                               |          S r   )rA   r   rX   s     r   r[   z/PlayerEventsAdded.from_json.<locals>.<listcomp>   &    EEEK))!,,EEEr   ru   )rl   ru   rq   r   s     r   r   zPlayerEventsAdded.from_json   F    s((j)9::EEd8nEEE
 
 
 	
r   N)r   r   r
   rt   rr   r   r   r   rt   rt      sX           $$$$
 
 
 [
 
 
r   rt   zMedia.playerMessagesLoggedc                  @    e Zd ZU dZded<   ded<   edd	            Zd
S )PlayerMessagesLoggedz@
    Send a list of any messages that need to be delivered.
    r	   rl   ztyping.List[PlayerMessage]messagesr   r   r
   c                x     | t                               |d                   d |d         D                       S )Nro   c                B    g | ]}t                               |          S r   )r0   r   rX   s     r   r[   z2PlayerMessagesLogged.from_json.<locals>.<listcomp>   s&    KKKQm--a00KKKr   r|   )rl   r|   rq   r   s     r   r   zPlayerMessagesLogged.from_json   sG    s((j)9::KK$z:JKKK
 
 
 	
r   N)r   r   r
   r{   rr   r   r   r   r{   r{      sX           ((((
 
 
 [
 
 
r   r{   zMedia.playerErrorsRaisedc                  @    e Zd ZU dZded<   ded<   edd	            Zd
S )PlayerErrorsRaisedz>
    Send a list of any errors that need to be delivered.
    r	   rl   rQ   errorsr   r   r
   c                x     | t                               |d                   d |d         D                       S )Nro   c                B    g | ]}t                               |          S r   ra   rX   s     r   r[   z0PlayerErrorsRaised.from_json.<locals>.<listcomp>  rx   r   r   )rl   r   rq   r   s     r   r   zPlayerErrorsRaised.from_json
  ry   r   N)r   r   r
   r   rr   r   r   r   r   r     sX           $$$$
 
 
 [
 
 
r   r   zMedia.playersCreatedc                  6    e Zd ZU dZded<   ed	d            ZdS )
PlayersCreatedz
    Called whenever a player is created, or when a new agent joins and receives
    a list of active players. If an agent is restored, it will receive the full
    list of player ids and all events again.
    ztyping.List[PlayerId]playersr   r   r
   c                :     | d |d         D                       S )Nc                B    g | ]}t                               |          S r   rq   rX   s     r   r[   z,PlayersCreated.from_json.<locals>.<listcomp>  s&    DDDqX''**DDDr   r   )r   r   r   s     r   r   zPlayersCreated.from_json  s0    sDDDODDD
 
 
 	
r   N)r   r   r
   r   rr   r   r   r   r   r     sL          
 #"""
 
 
 [
 
 
r   r   )r
   rb   )
__future__r   utilr   r   dataclassesr   enumtypingr   r	   r+   r*   r0   r;   rA   rF   rM   rg   ri   rk   rt   r{   r   r   r   r   r   <module>r      sS   # " " " " " * * * * * * * * ! ! ! ! ! !  9 9 9 9 9s 9 9 9	: 	: 	: 	: 	: 	: 	: 	: 
 
 
 
 
 
 
 
@ 
 
 
 
 
 
 
 
, 
 
 
 
 
 
 
 
, 
 
 
 
 
 
 
 
. %
 %
 %
 %
 %
 %
 %
 %
P       ,--

 
 
 
 
 
 
  .-
  &''

 
 
 
 
 
 
  ('
  )**

 
 
 
 
 
 
  +*
 '((

 
 
 
 
 
 
  )(
 #$$

 
 
 
 
 
 
  %$
 
 
r   