Ë
    bQbjù  ã                  ó¦  — 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ddl	m
Z
 ddl	mZ ddl	mZ e G d	„ d
«      «       Z G d„ dej                  «      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y)é    )Úannotationsé   )Úevent_classÚT_JSON_DICT)Ú	dataclassN)Údom)Úpage)Úruntimec                  óD   — e Zd ZU dZdZded<   dZded<   d„ Zed„ «       Z	y)Ú
Annotationz
    Tool annotations
    Nztyping.Optional[bool]Ú	read_onlyÚ
autosubmitc                ó†   — t        «       }| j                  �| j                  |d<   | j                  �| j                  |d<   |S )NÚreadOnlyr   )Údictr   r   ©ÚselfÚjsons     úb/var/www/html/venv/lib/python3.12/site-packages/selenium/webdriver/common/devtools/v148/web_mcp.pyÚto_jsonzAnnotation.to_json   s>   € Ü‹vˆØ�>‰>Ð%Ø#Ÿ~™~ˆD�ÑØ�?‰?Ð&Ø!%§¡ˆD�ÑØˆó    c                óh   —  | d|v rt        |d   «      nd d|v rt        |d   «      ¬«      S d ¬«      S )Nr   r   )r   r   )Úbool©Úclsr   s     r   Ú	from_jsonzAnnotation.from_json$   sF   € áØ0:¸dÑ0B”d˜4 
Ñ+Ô,ÈØ3?À4Ñ3G”t˜D Ñ.Ó/ô
ð 	
àMQô
ð 	
r   )
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__annotations__r   r   Úclassmethodr   © r   r   r   r      s:   … ñð (,€IÐ$Ó+ð )-€JÐ%Ó,òð ñ
ó ñ
r   r   c                  ó2   — e Zd ZdZdZdZdZd„ Zed„ «       Z	y)ÚInvocationStatusz5
    Represents the status of a tool invocation.
    ÚSuccessÚCanceledÚErrorc                ó   — | j                   S ©N)Úvalue)r   s    r   r   zInvocationStatus.to_json4   s   € Ø�z‰zÐr   c                ó   —  | |«      S r*   r#   r   s     r   r   zInvocationStatus.from_json7   s   € á�4‹yÐr   N)
r   r   r   r    ÚSUCCESSÚCANCELEDÚERRORr   r"   r   r#   r   r   r%   r%   ,   s1   „ ñð €GØ€HØ€Eòð ñó ñr   r%   c                  ó~   — e Zd ZU dZded<   ded<   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	e
d„ «       Zy)ÚToolz3
    Definition of a tool that can be invoked.
    ÚstrÚnameÚdescriptionúpage.FrameIdÚframe_idNztyping.Optional[dict]Úinput_schemaztyping.Optional[Annotation]r   z"typing.Optional[dom.BackendNodeId]Úbackend_node_idz#typing.Optional[runtime.StackTrace]Ústack_tracec                ó¼  — t        «       }| j                  |d<   | j                  |d<   | j                  j	                  «       |d<   | j
                  �| j
                  |d<   | j                  �| j                  j	                  «       |d<   | j                  �| j                  j	                  «       |d<   | j                  �| j                  j	                  «       |d<   |S )Nr3   r4   ÚframeIdÚinputSchemar   ÚbackendNodeIdÚ
stackTrace)	r   r3   r4   r6   r   r7   r   r8   r9   r   s     r   r   zTool.to_jsonV   sÌ   € Ü‹vˆØ—y‘yˆˆV‰Ø"×.Ñ.ˆˆ]ÑØŸ-™-×/Ñ/Ó1ˆˆY‰Ø×ÑÐ(Ø"&×"3Ñ"3ˆD�ÑØ×ÑÐ'Ø"&×"2Ñ"2×":Ñ":Ó"<ˆD�ÑØ×ÑÐ+Ø$(×$8Ñ$8×$@Ñ$@Ó$BˆD�Ñ!Ø×ÑÐ'Ø!%×!1Ñ!1×!9Ñ!9Ó!;ˆD�ÑØˆr   c                óŽ  —  | t        |d   «      t        |d   «      t        j                  j                  |d   «      d|v rt	        |d   «      nd d|v rt
        j                  |d   «      nd d|v r"t        j                  j                  |d   «      nd d|v r't        j                  j                  |d   «      ¬«      S d ¬«      S )	Nr3   r4   r;   r<   r   r=   r>   )r3   r4   r6   r7   r   r8   r9   )
r2   r	   ÚFrameIdr   r   r   r   ÚBackendNodeIdr
   Ú
StackTracer   s     r   r   zTool.from_jsone   sÉ   € áÜ�T˜&‘\Ó"Ü˜D Ñ/Ó0Ü—\‘\×+Ñ+¨D°©OÓ<Ø6CÀtÑ6Kœ˜d =Ñ1Ô2ÐQUØERÐVZÑEZœ
×,Ñ,¨T°-Ñ-@ÔAÐ`dØRaÐeiÑRiœC×-Ñ-×7Ñ7¸¸_Ñ8MÔNÐosØLXÐ\`ÑL`œ×*Ñ*×4Ñ4°T¸,Ñ5GÓHô
ð 	
ð gkô
ð 	
r   )r   r   r   r    r!   r7   r   r8   r9   r   r"   r   r#   r   r   r1   r1   <   sk   … ñð ƒIð Óð Óð +/€LÐ'Ó.ð 04€KÐ,Ó3ð ;?€OÐ7Ó>ð 8<€KÐ4Ó;òð ñ	
ó ñ	
r   r1   c               #  ó   K  — ddi} | –—}y­w)zœ
    Enables the WebMCP domain, allowing events to be sent. Enabling the domain will trigger a toolsAdded event for
    all currently registered tools.
    ÚmethodzWebMCP.enableNr#   ©Úcmd_dictr   s     r   ÚenablerG   r   s   è ø€ ð 	�/ð€Hð ‰>�Dùó   ‚
c               #  ó   K  — ddi} | –—}y­w)z%
    Disables the WebMCP domain.
    rD   zWebMCP.disableNr#   rE   s     r   ÚdisablerJ   }   s   è ø€ ð
 	Ð"ð€Hð ‰>�DùrH   zWebMCP.toolsAddedc                  ó.   — e Zd ZU dZded<   edd„«       Zy)Ú
ToolsAddedz/
    Event fired when new tools are added.
    útyping.List[Tool]Útoolsc                óf   —  | |d   D �cg c]  }t         j                  |«      ‘Œ c}¬«      S c c}w ©NrN   )rN   ©r1   r   ©r   r   Úis      r   r   zToolsAdded.from_json�   ó-   € áØ.2°7©mÖ<¨”4—>‘> !Õ$Ò<ô
ð 	
ùÚ<ó   Š.N)r   r   ÚreturnrL   ©r   r   r   r    r!   r"   r   r#   r   r   rL   rL   ‡   ó!   … ñð Óàò
ó ñ
r   rL   zWebMCP.toolsRemovedc                  ó.   — e Zd ZU dZded<   edd„«       Zy)ÚToolsRemovedz-
    Event fired when tools are removed.
    rM   rN   c                óf   —  | |d   D �cg c]  }t         j                  |«      ‘Œ c}¬«      S c c}w rP   rQ   rR   s      r   r   zToolsRemoved.from_json    rT   rU   N)r   r   rV   rZ   rW   r#   r   r   rZ   rZ   —   rX   r   rZ   zWebMCP.toolInvokedc                  óL   — e Zd ZU dZded<   ded<   ded<   ded<   ed
d„«       Zy	)ÚToolInvokedz4
    Event fired when a tool invocation starts.
    r2   Ú	tool_namer5   r6   Úinvocation_idÚinput_c           	     ó¢   —  | t        |d   «      t        j                  j                  |d   «      t        |d   «      t        |d   «      ¬«      S )NÚtoolNamer;   ÚinvocationIdÚinput)r^   r6   r_   r`   )r2   r	   r@   r   r   s     r   r   zToolInvoked.from_json¶   sK   € áÜ˜$˜zÑ*Ó+Ü—\‘\×+Ñ+¨D°©OÓ<Ü˜d >Ñ2Ó3Ü�t˜G‘}Ó%ô	
ð 	
r   N)r   r   rV   r]   rW   r#   r   r   r]   r]   §   s1   … ñð ƒNàÓàÓàƒKàò
ó ñ
r   r]   zWebMCP.toolRespondedc                  óV   — e Zd ZU dZded<   ded<   ded<   ded	<   d
ed<   edd„«       Zy)ÚToolRespondedz@
    Event fired when a tool invocation completes or fails.
    r2   r_   r%   Ústatusztyping.Optional[typing.Any]Úoutputztyping.Optional[str]Ú
error_textz%typing.Optional[runtime.RemoteObject]Ú	exceptionc           
     óì   —  | t        |d   «      t        j                  |d   «      d|v r|d   nd d|v rt        |d   «      nd d|v r't        j                  j                  |d   «      ¬«      S d ¬«      S )Nrc   rg   rh   Ú	errorTextrj   )r_   rg   rh   ri   rj   )r2   r%   r   r
   ÚRemoteObjectr   s     r   r   zToolResponded.from_jsonÑ   s†   € áÜ˜d >Ñ2Ó3Ü#×-Ñ-¨d°8©nÓ=Ø%-°Ñ%5�4˜’>¸4Ø1<ÀÑ1D”s˜4 Ñ,Ô-È$ØKVÐZ^ÑK^”g×*Ñ*×4Ñ4°T¸+Ñ5FÓGô
ð 	
ð
 eiô
ð 	
r   N)r   r   rV   rf   rW   r#   r   r   rf   rf   À   s9   … ñð ÓàÓà'Ó'à$Ó$à4Ó4àò
ó ñ
r   rf   )rV   z0typing.Generator[T_JSON_DICT, T_JSON_DICT, None])Ú
__future__r   Úutilr   r   Údataclassesr   ÚenumÚtypingÚ r   r	   r
   r   ÚEnumr%   r1   rG   rJ   rL   rZ   r]   rf   r#   r   r   ú<module>ru      s  ðõ #ß *Ý !Û Û Ý Ý Ý ð ÷
ð 
ó ð
ô4�t—y‘yô ð  ÷2
ð 2
ó ð2
ójóñ Ð Ó!Ø
÷
ð 
ó ó "ð
ñ Ð"Ó#Ø
÷
ð 
ó ó $ð
ñ Ð!Ó"Ø
÷
ð 
ó ó #ð
ñ. Ð#Ó$Ø
÷
ð 
ó ó %ñ
r   