
    ]j              	      ~   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	m
Z
mZ  G d d      ZeZe G d d	             Ze G d
 d             Ze G d d             Ze G d d             Zeez  ez  ZddiZ G d d      ZeZ e       Zd e	ddej1                  d      rej1                  de      ne      ie_        y)    )annotations)Callable)	dataclass)Any)EventConfig_EventWrapper_EventManagerc                       e Zd ZdZdZdZdZdZy)LevelzLevel.debuginfowarnerrorN)__name__
__module____qualname____doc__DEBUGINFOWARNERROR     V/home/ubuntu/.local/lib/python3.12/site-packages/selenium/webdriver/common/bidi/log.pyr   r      s    EDDEr   r   c                  X    e Zd ZU dZdZded<   dZded<   dZded<   dZded<   dZ	ded<   y)	BaseLogEntryzBaseLogEntry.N
Any | Nonelevelsourcetext	timestampstack_trace)
r   r   r   r   r   __annotations__r   r    r!   r"   r   r   r   r   r      s7    E:FJD* Iz "K"r   r   c                       e Zd ZU dZdZded<   y)GenericLogEntryzGenericLogEntry.N
str | Nonetype)r   r   r   r   r'   r#   r   r   r   r%   r%   %   s    D*r   r%   c                      e Zd ZU dZdZded<   dZded<   dZded<   dZded	<   dZ	ded
<   dZ
ded<   dZded<   dZded<   edd       Zy)ConsoleLogEntryz7ConsoleLogEntry - a console log entry from the browser.Nr&   type_methodzlist | Noneargsr   r   r    r   r!   r"   c                    | |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      	      S )
"Deserialize from BiDi params dict.r'   r+   r,   r   r    r   r!   
stackTrace)r*   r+   r,   r   r    r   r!   r"   getclsparamss     r   	from_jsonzConsoleLogEntry.from_json9   sq     **V$::h'F#**W%F#::h'jj-

<0	
 		
r   )r4   dictreturnr)   )r   r   r   r   r*   r#   r+   r,   r   r    r   r!   r"   classmethodr5   r   r   r   r)   r)   ,   sg    AE:FJD+E:D*FJ Iz "K"
 
r   r)   c                  x    e Zd ZU dZdZded<   dZded<   dZded<   dZded<   dZ	ded	<   dZ
ded
<   edd       Zy)JavascriptLogEntryzCJavascriptLogEntry - a JavaScript error log entry from the browser.Nr&   r*   r   r   r    r   r!   
stacktracec           
          | |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d            S )r.   r'   r   r    r   r!   r/   )r*   r   r    r   r!   r;   r0   r2   s     r   r5   zJavascriptLogEntry.from_jsonR   sY     **V$**W%F#::h'jj-zz,/
 	
r   )r4   r6   r7   r:   )r   r   r   r   r*   r#   r   r    r   r!   r;   r8   r5   r   r   r   r:   r:   G   sS    ME:E:D*FJ Iz !J
!	
 	
r   r:   entry_addedzlog.entryAddedc                  B    e Zd ZU dZi Zded<   d	dZd
ddZddZd	dZ	y)LogzWebDriver BiDi log module.zdict[str, EventConfig]EVENT_CONFIGSc                H    || _         t        || j                        | _        y N)_connr	   r@   _event_manager)selfconns     r   __init__zLog.__init__i   s    
+D$2D2DEr   Nc                <    | j                   j                  |||      S )a  Add an event handler.

        Args:
            event: The event to subscribe to.
            callback: The callback function to execute on event.
            contexts: The context IDs to subscribe to (optional).

        Returns:
            The callback ID.
        )rD   add_event_handler)rE   eventcallbackcontextss       r   rI   zLog.add_event_handlern   s     ""44UHhOOr   c                :    | j                   j                  ||      S )zRemove an event handler.

        Args:
            event: The event to unsubscribe from.
            callback_id: The callback ID.
        )rD   remove_event_handler)rE   rJ   callback_ids      r   rN   zLog.remove_event_handler{   s     ""77{KKr   c                6    | j                   j                         S )zClear all event handlers.)rD   clear_event_handlers)rE   s    r   rQ   zLog.clear_event_handlers   s    ""7799r   )r7   NonerB   )rJ   strrK   r   rL   zlist[str] | Noner7   int)rJ   rS   rO   rT   r7   rR   )
r   r   r   r   r@   r#   rG   rI   rN   rQ   r   r   r   r?   r?   e   s'    $,.M).F
PL:r   r?   
EntryAddedN)
__future__r   collections.abcr   dataclassesr   typingr   -selenium.webdriver.common.bidi._event_managerr   r   r	   r   LogLevelr   r%   r)   r:   EntryEVENT_NAME_MAPPINGr?   rU   globals_globalsr1   r6   r@   r   r   r   <module>r`      s    # $ !  c c  
# # #    
 
 
4 
 
 
, 	/),>> # !: !:J 
 9;,4LL,F\4(D r   