§
    šŠtjê  ã                  ó¸   — d Z ddlmZ ddlZddlmZmZmZmZm	Z	m
Z
 erddlmZ ddlmZ ddlmZ ddlmZ dd„Zdd„Z	 ddd„Z	 ddd„Z e
d¦  «        Zdd„ZdS ) z+Utilities for the Playwright browser tools.é    )ÚannotationsN)ÚTYPE_CHECKINGÚAnyÚ	CoroutineÚListÚOptionalÚTypeVar)ÚBrowser)ÚPageÚbrowserÚAsyncBrowserÚreturnÚ	AsyncPagec              ƒ  óò   K  — | j         s4|                      ¦   «         ƒ d{V —†}|                     ¦   «         ƒ d{V —†S | j         d         }|j        s|                     ¦   «         ƒ d{V —†S |j        d         S )zÅ
    Asynchronously get the current page of the browser.

    Args:
        browser: The browser (AsyncBrowser) to get the current page from.

    Returns:
        AsyncPage: The current page.
    Nr   éÿÿÿÿ©ÚcontextsÚnew_contextÚnew_pageÚpages©r   Úcontexts     úh/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/langchain_community/tools/playwright/utils.pyÚaget_current_pager      s¢   è è € ð Ôð (Ø×+Ò+Ñ-Ô-Ð-Ð-Ð-Ð-Ð-Ð-ˆØ×%Ò%Ñ'Ô'Ð'Ð'Ð'Ð'Ð'Ð'Ð'ØÔ˜qÔ!€GØŒ=ð (Ø×%Ò%Ñ'Ô'Ð'Ð'Ð'Ð'Ð'Ð'Ð'àŒ=˜ÔÐó    ÚSyncBrowserÚSyncPagec                óÊ   — | j         s(|                      ¦   «         }|                     ¦   «         S | j         d         }|j        s|                     ¦   «         S |j        d         S )z¥
    Get the current page of the browser.
    Args:
        browser: The browser to get the current page from.

    Returns:
        SyncPage: The current page.
    r   r   r   r   s     r   Úget_current_pager   #   sh   € ð Ôð "Ø×%Ò%Ñ'Ô'ˆØ×ÒÑ!Ô!Ð!ØÔ˜qÔ!€GØŒ=ð "Ø×ÒÑ!Ô!Ð!àŒ=˜ÔÐr   TÚheadlessÚboolÚargsúOptional[List[str]]c                ó²   — ddl m} t           |¦   «                              ¦   «         ¦  «        }t          |j                             | |¬¦  «        ¦  «        S )a   
    Create an async playwright browser.

    Args:
        headless: Whether to run the browser in headless mode. Defaults to True.
        args: arguments to pass to browser.chromium.launch

    Returns:
        AsyncBrowser: The playwright browser.
    r   )Úasync_playwright©r    r"   )Úplaywright.async_apir%   Ú	run_asyncÚstartÚchromiumÚlaunch)r    r"   r%   r   s       r   Úcreate_async_playwright_browserr,   6   s]   € ð 6Ð5Ð5Ð5Ð5Ð5åÐ(Ð(Ñ*Ô*×0Ò0Ñ2Ô2Ñ3Ô3€GÝ�WÔ%×,Ò,°hÀTÐ,ÑJÔJÑKÔKÐKr   c                ó~   — ddl m}  |¦   «                              ¦   «         }|j                             | |¬¦  «        S )zø
    Create a playwright browser.

    Args:
        headless: Whether to run the browser in headless mode. Defaults to True.
        args: arguments to pass to browser.chromium.launch

    Returns:
        SyncBrowser: The playwright browser.
    r   )Úsync_playwrightr&   )Úplaywright.sync_apir.   r)   r*   r+   )r    r"   r.   r   s       r   Úcreate_sync_playwright_browserr0   I   sK   € ð 4Ð3Ð3Ð3Ð3Ð3àˆoÑÔ×%Ò%Ñ'Ô'€GØÔ×"Ò"¨H¸4Ð"Ñ@Ô@Ð@r   ÚTÚcoroúCoroutine[Any, Any, T]c                óR   — t          j        ¦   «         }|                     | ¦  «        S )z˜Run an async coroutine.

    Args:
        coro: The coroutine to run. Coroutine[Any, Any, T]

    Returns:
        T: The result of the coroutine.
    )ÚasyncioÚget_event_loopÚrun_until_complete)r2   Ú
event_loops     r   r(   r(   _   s&   € õ Ô'Ñ)Ô)€JØ×(Ò(¨Ñ.Ô.Ð.r   )r   r   r   r   )r   r   r   r   )TN)r    r!   r"   r#   r   r   )r    r!   r"   r#   r   r   )r2   r3   r   r1   )Ú__doc__Ú
__future__r   r5   Útypingr   r   r   r   r   r	   r'   r
   r   r   r   r/   r   r   r   r   r,   r0   r1   r(   © r   r   ú<module>r=      sA  ðØ 1Ð 1à "Ð "Ð "Ð "Ð "Ð "à €€€Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ Iàð 5Ø<Ð<Ð<Ð<Ð<Ð<Ø6Ð6Ð6Ð6Ð6Ð6Ø:Ð:Ð:Ð:Ð:Ð:Ø4Ð4Ð4Ð4Ð4Ð4ðð ð ð ð(ð ð ð ð( 8<ðLð Lð Lð Lð Lð( 8<ðAð Að Að Að Að& €GˆC�L„L€ð
/ð 
/ð 
/ð 
/ð 
/ð 
/r   