
    i                     d    d dl Z 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  G d d          ZdS )	    N)Any)
Connection)create_remote_object)PipeTransport)
Playwrightc                   >    e Zd ZddZdefdZdefdZdeddfdZdS )	PlaywrightContextManagerreturnNc                     |  d| _         d S )NF)_exit_was_calledselfs    e/Users/shanyulin/my-agent/.venv/lib/python3.11/site-packages/playwright/async_api/_context_manager.py__init__z!PlaywrightContextManager.__init__   s    $ %    c                 D  K   t          j                    }t          d t          t	          |          |          | _        |                    | j                                                   | j        j        }t          j	        | j        j
        j        |ht           j                   d {V \  }}|                                s|                                 t          t!          t#          |                                                              }| j        |_        |S )N)return_when)asyncioget_running_loopr   r   r   _connectioncreate_taskrunplaywright_futurewait
_transporton_error_futureFIRST_COMPLETEDdonecancelAsyncPlaywrightnextiterresult	__aexit__stop)r   loopr   r   _
playwrights         r   
__aenter__z#PlaywrightContextManager.__aenter__   s     '))% $	
 
 	)--//000 ,>(8:KL/
 
 
 
 
 
 
 
 
a !%%'' 	'$$&&&$T$t**%5%5%<%<%>%>??
.
r   c                 :   K   |                                   d {V S )N)r)   r   s    r   startzPlaywrightContextManager.start2   s(      __&&&&&&&&&r   argsc                 h   K   | j         rd S d| _         | j                                         d {V  d S )NT)r   r   
stop_async)r   r,   s     r   r$   z"PlaywrightContextManager.__aexit__5   sK        	F $))+++++++++++r   )r
   N)	__name__
__module____qualname__r   r    r)   r+   r   r$    r   r   r	   r	      s        & & & &/    *'_ ' ' ' ',S ,T , , , , , ,r   r	   )r   typingr   playwright._impl._connectionr    playwright._impl._object_factoryr   playwright._impl._transportr   playwright.async_api._generatedr   r    r	   r2   r   r   <module>r8      s           3 3 3 3 3 3 A A A A A A 5 5 5 5 5 5 I I I I I I!, !, !, !, !, !, !, !, !, !,r   