
    dh                        S SK Jr  S SKJrJr  S SKJrJr  S SKJ	r	  S SK
Jr  S SKJrJr   " S S\	5      r " S	 S
\5      rg)    )annotations)OptionalType)AsyncCallbackManagerForToolRunCallbackManagerForToolRun)	BaseModel)BaseBrowserTool)aget_current_pageget_current_pagec                      \ rS rSrSrSrg)NavigateBackToolInput   z,Explicit no-args input for NavigateBackTool. N)__name__
__module____qualname____firstlineno____doc____static_attributes__r       j/var/www/html/shao/venv/lib/python3.13/site-packages/langchain_community/tools/playwright/navigate_back.pyr   r      s    6r   r   c                  h    \ rS rSr% SrSrS\S'   SrS\S'   \r	S\S	'   SSS jjr
 S   SS jjrSrg
)NavigateBackTool   z:Navigate back to the previous page in the browser history.previous_webpagestrnamez9Navigate back to the previous page in the browser historydescriptionzType[BaseModel]args_schemaNc                    U R                   c  [        SU R                   35      e[        U R                   5      nUR	                  5       nU(       a  SUR
                   SUR                   3$ g)Use the tool.z$Synchronous browser not provided to .Navigated back to the previous page with URL ''. Status code 8Unable to navigate back; no previous page in the history)sync_browser
ValueErrorr   r   go_backurlstatusselfrun_managerpageresponses       r   _runNavigateBackTool._run   sn    $CDII;OPP 1 12<<>@ O  (02
 Nr   c                  #    U R                   c  [        SU R                   35      e[        U R                   5      I Sh  vN nUR	                  5       I Sh  vN nU(       a  SUR
                   SUR                   3$ g N@ N*7f)r!   Nz%Asynchronous browser not provided to r"   r#   r$   )async_browserr&   r   r
   r'   r(   r)   r*   s       r   _arunNavigateBackTool._arun,   s     
 %DTYYKPQQ&t'9'9::'@ O  (02
 N ;'s#   >B BBB)BBr   )N)r,   z#Optional[CallbackManagerForToolRun]returnr   )r,   z(Optional[AsyncCallbackManagerForToolRun]r5   r   )r   r   r   r   r   r   __annotations__r   r   r   r/   r3   r   r   r   r   r   r      sP    D"D#"RKR#8K8N" AEN=N 
N Nr   r   N)
__future__r   typingr   r   langchain_core.callbacksr   r   pydanticr   )langchain_community.tools.playwright.baser	   *langchain_community.tools.playwright.utilsr
   r   r   r   r   r   r   <module>r=      s7    " !  E7I 7&N &Nr   