
    Ng                        d dl mZ d dlmZmZ d dlmZmZ d dlm	Z	 d dl
mZ d dlmZmZ  G d de	          Z G d	 d
e          ZdS )    )annotations)OptionalType)AsyncCallbackManagerForToolRunCallbackManagerForToolRun)	BaseModel)BaseBrowserTool)aget_current_pageget_current_pagec                      e Zd ZdZdS )NavigateBackToolInputz,Explicit no-args input for NavigateBackTool.N)__name__
__module____qualname____doc__     n/var/www/html/ai-engine/env/lib/python3.11/site-packages/langchain_community/tools/playwright/navigate_back.pyr   r      s        6666r   r   c                  T    e Zd ZU dZdZded<   dZded<   eZded<   dddZ		 dddZ
d	S )NavigateBackToolz: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_schemaNrun_manager#Optional[CallbackManagerForToolRun]returnc                    | j         t          d| j                   t          | j                   }|                                }|rd|j         d|j         S dS )Use the tool.Nz$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selfr   pageresponses       r   _runzNavigateBackTool._run   sz    $ODIOOPPP 122<<>> 	N2 2 2 (2 2
 NMr   (Optional[AsyncCallbackManagerForToolRun]c                   K   | j         t          d| j                   t          | j                    d{V }|                                 d{V }|rd|j         d|j         S dS )r    Nz%Asynchronous browser not provided to r!   r"   r#   )async_browserr%   r   r
   r&   r'   r(   r)   s       r   _arunzNavigateBackTool._arun,   s      
 %PTYPPQQQ&t'9::::::::'''''' 	N2 2 2 (2 2
 NMr   )N)r   r   r   r   )r   r.   r   r   )r   r   r   r   r   __annotations__r   r   r   r-   r1   r   r   r   r   r      s         DD"D""""RKRRRR#8K8888N N N N N" AEN N N 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>r9      s   " " " " " " ! ! ! ! ! ! ! !              E E E E E E       7 7 7 7 7I 7 7 7&N &N &N &N &N &N &N &N &N &Nr   