
    g                         d dl Z d dlmZ d dlmZ d dlmZmZmZm	Z	m
Z
mZmZ d dlmZmZ  e       Z ed      Z edd	      Z G d
 dee         Z G d dee   e      Z G d de      Z G d de      Zy)    N)AbstractAsyncContextManager)TracebackType)AnyCallableGenericOptionalTypeTypeVarUnion)ImplToApiMappingImplWrapperTSelfAsyncContextManager)boundc                   >    e Zd ZddZedefd       ZddZdefdZ	y)	AsyncEventInforeturnNc                     || _         y N)_futureselffutures     Q/var/www/openai/venv/lib/python3.12/site-packages/playwright/_impl/_async_base.py__init__zAsyncEventInfo.__init__   s	        c                 \   K   t         j                  | j                   d {         S 7 wr   )mappingfrom_maybe_implr   r   s    r   valuezAsyncEventInfo.value!   s!     &&T\\'9::'9s   ,*	,c                 8    | j                   j                          y r   )r   cancelr!   s    r   _cancelzAsyncEventInfo._cancel%   s    r   c                 6    | j                   j                         S r   )r   doner!   s    r   is_donezAsyncEventInfo.is_done(   s    ||  ""r   r   zasyncio.Future[T]r   Nr   N)
__name__
__module____qualname__r   propertyr   r"   r%   boolr(    r   r   r   r      s3     ;Q ; ;# #r   r   c                   V    e Zd Zd	dZdee   fdZdeee	      dee	   dee
   ddfdZy)
AsyncEventContextManagerr   Nc                 2    t        t           |      | _        y r   )r   r   _eventr   s     r   r   z!AsyncEventContextManager.__init__-   s    $Q'/r   c                 "   K   | j                   S wr   )r4   r!   s    r   
__aenter__z#AsyncEventContextManager.__aenter__0   s     {{s   exc_typeexc_valexc_tbc                    K   |r| j                   j                          y | j                   j                   d {    y 7 wr   )r4   r%   r"   )r   r7   r8   r9   s       r   	__aexit__z"AsyncEventContextManager.__aexit__3   s.      KK!++####s   7A?Ar)   )r+   r,   r-   r   r   r   r6   r   r	   BaseExceptionr   r;   r0   r   r   r2   r2   ,   sW    0."3 	$4./	$ -(	$ '		$
 
	$r   r2   c                        e Zd Zdeddf fdZdefdZdeedef   ef   ded   fd	Z	d
ededdfdZ
d
ededdfdZd
ededdfdZ xZS )	AsyncBaseimpl_objr   Nc                 F    t         |   |       |j                  | _        y r   )superr   _loop)r   r?   	__class__s     r   r   zAsyncBase.__init__@   s    "^^
r   c                 6    | j                   j                         S r   )	_impl_obj__str__r!   s    r   rF   zAsyncBase.__str__D   s    ~~%%''r   handler.).Nc                 F    t        |      rt        j                  |      S |S r   )callabler   wrap_handler)r   rG   s     r   _wrap_handlerzAsyncBase._wrap_handlerG   s"     G''00r   eventfc                 Z    | j                   j                  || j                  |             y)z9Registers the function ``f`` to the event name ``event``.N)rE   onrK   r   rL   rM   s      r   rO   zAsyncBase.onN   s!    %!3!3A!67r   c                 Z    | j                   j                  || j                  |             y)zoThe same as ``self.on``, except that the listener is automatically
        removed after being called.
        N)rE   oncerK   rP   s      r   rR   zAsyncBase.onceR   s#     	E4#5#5a#89r   c                 Z    | j                   j                  || j                  |             y)z*Removes the function ``f`` from ``event``.N)rE   remove_listenerrK   rP   s      r   rT   zAsyncBase.remove_listenerX   s!    &&ud.@.@.CDr   )r+   r,   r-   r   r   strrF   r   r   rK   rO   rR   rT   __classcell__)rC   s   @r   r>   r>   ?   s    $ $ $( (Xc3h/45	)	8 8 8 8:# :# :$ :ES ES ET Er   r>   c                   B    e Zd ZdedefdZdee   dededdfdZd
d	Z	y)r   r   r   c                    K   | S wr   r0   r!   s    r   r6   zAsyncContextManager.__aenter__^   s     s   r7   r8   	tracebackNc                 @   K   | j                          d {    y 7 wr   )close)r   r7   r8   rY   s       r   r;   zAsyncContextManager.__aexit__a   s      jjls   c                    K   y wr   r0   r!   s    r   r[   zAsyncContextManager.closei   s     3s   r*   )
r+   r,   r-   r   r6   r	   r<   r   r;   r[   r0   r   r   r   r   ]   sJ    t  }%  !	
 
 'r   )asyncio
contextlibr   typesr   typingr   r   r   r   r	   r
   r   %playwright._impl._impl_to_api_mappingr   r   r   r   r   r   r2   r>   r   r0   r   r   <module>rb      sy     2  I I I O

 CLv23#WQZ #$wqz+F $&E E<') 'r   