a
    ҏi>                     @   s  d dl Z d dlZd dlZd dlZ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mZmZ d dlmZ d dlmZmZmZmZmZmZ d dlmZ d dlmZm Z m!Z! d d	l"m#Z# d d
l$m%Z% d dl&m'Z' d dl(m)Z)m*Z*m+Z+ d dl,m-Z- d dl.m/Z/ d dl0m1Z1 d dl2m3Z3 d dl4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZH d dlImJZJmKZKmLZL d dlMmNZNmOZOmPZPmQZQ d dlRmSZSmTZTmUZUmVZV d dlWmXZX d dlYmZZZ ej[dkrd dl	m\Z\ nd dl]m\Z\ e
r4d dl^m_Z_ d dl`maZa d dlbmcZcmdZd d dlRmeZe G dd deZfG dd  d eZgG d!d" d"eZheeBeCf eei d#d$d%Zjeieid&d'd(ZkdS ))    N)Path)SimpleNamespace)	TYPE_CHECKINGAnyCallableDictListOptionalPatternUnioncast)Accessibility)AriaRoleFilePayload	FloatRect
PdfMarginsPositionViewportSize)Artifact)ChannelOwnerfrom_channelfrom_nullable_channel)ConsoleMessage)Download)ElementHandle)ErrorTargetClosedErroris_target_closed_error)EventContextManagerImpl)FileChooser)Frame)	HarRouter)ColorSchemeDocumentLoadStateForcedColorsHarModeKeyboardModifierMouseButtonReducedMotionRouteFromHarNotFoundPolicyRouteHandlerRouteHandlerCallbackTimeoutSettingsURLMatch
URLMatcherURLMatchRequestURLMatchResponseasync_readfileasync_writefilelocals_to_paramsmake_dirs_for_fileserialize_error)KeyboardMouseTouchscreen)JSHandleSerializableparse_resultserialize_argument)RequestResponseRouteserialize_headers)Video)Waiter)      )Literal)BrowserContext)APIRequestContext)FrameLocatorLocator)	WebSocketc                       s  e Zd ZU eddddddddd	d
ddddddddddZeed< eed< eed< e	ed< e
eeedd fddZedddZedd d!d"Zedd d#d$Zedd%d&d'Zd(dd)d*d+Zd,dd-d.d/Zddd0d1Zddd2d3Zedd4d5d6Zedd4d7d8Zed9dd:d;Zed  dd<d=Zeedd>d?Zd>ee ee d@dAdBZ!ee"e ddCdDZ#e$ddEdFdGZ%e$ddEdHdIZ&d?ee'ee( dJdKdLZ)ee"e( dMdNdOZ*d@ee$e+dP e'ee( dQdRdSZ,dAee'e$e'dTdUdVZ-dBee'e$e'dTdWdXZ.dCee'e$e'dTdYdZZ/dDee'e$e'dTd[d\Z0dEee'e$e'dTd]d^Z1dFee'e$e'dTd_d`Z2dGeeee$e'ddadbdcZ3dHee4edddedfZ5dIee4e6dddgdhZ7dJeee4e'edidjdkZ8dKeee4edldmdnZ9dLee:ee;f eee(dodpdqZ<dMee:ee;f ee(drdsdtZ=ee>ddudvdwZ?dNee>e'ddxdydzZ@eeef dd{d|d}ZAeedd~dZBedddZCdOee$eDddddZEdPee$eDeeeF dddZGdQe$eDeeF dddZHdRe+d e$ddddZIdSe eDe$ddddZJdTee>e$edddZKdUe$eDeeF dddZLdVe$eDeeF dddZMdWe+d eNeOePddddZQeRddddZSeeeR dddZTddddZUdXee:ee;f ddddZVdYe eWeXddddZYdZe eeW ddddZZd[e:e;ef e:e[e ef e\e'e+d e]ddddZ^ddddZ_d\e$e+d e:ee;f eXe'e'e`e+d e+d e+d e"d eeadddZbedddZcd]e'eddddZde'dddZed^ee"ef ege$eheXe$e'e'e'e'ddddĄZid_ee"ef ege$ehe$e'e'e'e'ddŜddǄZjd`ee"ef ege$e'e'e'e'ddȜ	ddʄZkdaeee$e'e'e'dd˜dd̈́Zldbee:ee[e f e:ee[e f ddddΜddЄZmdce:ee[e f e'ddќddӄZndde:ee[e f e'ddќddՄZodee:ee[e f e'ddќddׄZpdfeqe'e'e'e'eXe:ee[e f e'e'e'dd؜ddڄZre:ee[e f ddۜdd݄Zsdge:ee[e f e'ddќdd߄Ztdhe:ee[e f e'ddќddZueddMddZvdiee'e$ddTddZwdjee'e$ee dTddZxdkee'e$edTddZydlee'e$edTddZzdmeee'e$ee dddZ{dnee"ef ege$e'e'e'e'dd	ddZ|doeeegege'e'e$e'e'dd
ddZ}dpee:ee"e f e:eXe"eX f e:ee"e f e:de"d f e$e'e'e'e"e d
ddZ~dqee'e$edTddZdree:ee;ee"e:ee;f  e"e f e$e'e'ddddZdseee$e$e'e'ddd dZdteee$e$e'e'ddddZdueege$e'e'e'e'ddddZdveege$e'e'e'e'dddd	Ze$ddEd
dZdwee4e$e:e$e+d f e6dddZee"d, dddZeddddZddddZdxe$e'eee'e'eee:ee$f e:ee$f e'ee:ee;f eadddZeee dddZedddZdyee>e$edddZdzee>e$eed d!d"Zd{e>ege'f e$ee d#d$d%Zd|e>ege'f e$ee d#d&d'Zd}e>ege'f e$ee d#d(d)Zd~e eDe$eeF dd*d+Zde>d ge'f e$ed  d#d,d-Zdee$ee d.d/d0Zde>d1ge'f e$ee d#d2d3Zdee$eeF d.d4d5Zde>d6ge'f e$ed6 d#d7d8Zde>d,ge'f e$ed, d#d9d:Zdee'ege$e'e'e'e'dd;	d<d=Z  ZS (  PageclosecrashconsoledialogdownloadZfilechooserdomcontentloadedZ	pageerrorrequestresponseZrequestfailedZrequestfinishedZframeattachedZframedetachedZframenavigatedloadZpopup	websocketworker)CloseCrashConsoleDialogr   r   ZDOMContentLoadedZ	PageErrorr=   r>   RequestFailedRequestFinishedFrameAttachedFrameDetachedZFrameNavigatedLoadPopuprJ   WorkeraccessibilitykeyboardmousetouchscreenNparenttypeguidinitializerreturnc                    s:  t  |||| td| _t j _t j _t	 j _
t j _t|d  _  j_ jg _|d _d _g  _i  _g  _d  _t jj _d  _tdt|d _d  _ jd fdd	  jd
 fdd	  jd fdd	  jd fdd	  jd fdd	  jd fdd	  jd fdd	  jd fdd	  jd fdd	  jd fdd	  jd fdd	 t   _! t"j#j$ fdd	  t"j#j% fdd	  &t"j#j'd t"j#j(d!t"j#j)d"t"j#j*d#t"j#j+d$t"j#j,d%t"j#j-di d S )&NrF   Z	mainFrameviewportSizeFrK   openerZbindingCallc                    s     t| d S )NZbinding)_on_bindingr   paramsself F/home/Claro/venv/lib/python3.9/site-packages/playwright/_impl/_page.py<lambda>       zPage.__init__.<locals>.<lambda>rL   c                    s      S N	_on_close_rq   rs   rt   ru      rv   rM   c                    s      S rw   )	_on_crashrz   rq   rs   rt   ru      rv   rP   c                    s
     | S rw   )_on_downloadro   rq   rs   rt   ru      rv   ZfileChooserc                    s$     tjjt t| d | d S )NelementZ
isMultiple)emitrK   Eventsr   r   ro   rq   rs   rt   ru      s
   ZframeAttachedc                    s     t| d S Nframe)_on_frame_attachedr   ro   rq   rs   rt   ru      rv   ZframeDetachedc                    s     t| d S r   )_on_frame_detachedr   ro   rq   rs   rt   ru      rv   routec                    s   t  t| d S )Nr   )asynciocreate_task	_on_router   ro   rq   rs   rt   ru      s   videoc                    s
     | S rw   )	_on_videoro   rq   rs   rt   ru      rv   	webSocketc                    s     tjjt| d S )Nr   )r   rK   r   rJ   r   ro   rq   rs   rt   ru      s   rV   c                    s     t| d S NrV   )
_on_workerr   ro   rq   rs   rt   ru      rv   c                    s    j  s j   S d S rw   )_closed_or_crashed_futuredone
set_result_close_error_with_reasonrz   rq   rs   rt   ru      s
    c                    s    j  s j t S d S rw   )r   r   r   r   rz   rq   rs   rt   ru      s    rN   rO   rR   rS   ZrequestFinishedZrequestFailed).super__init__r   _browser_contextr   _channelrb   r6   rc   r7   rd   r8   re   r   _main_frame_page_framesget_viewport_size
_is_closed_workers	_bindings_routes_owned_contextr,   _timeout_settings_videor   _opener_close_reasononr   ZFuturer   rK   r   rW   rX   Z"_set_event_to_subscription_mappingrY   rZ   r=   r>   r\   r[   r   rr   rg   rh   ri   rj   	__class__rq   rt   r      s    


	






zPage.__init__rk   c                 C   s   d| j dS )Nz
<Page url=>urlrq   rs   rs   rt   __repr__   s    zPage.__repr__)r   rk   c                 C   s&   | |_ | j| | tjj| d S rw   )r   r   appendr   rK   r   r]   rr   r   rs   rs   rt   r      s    zPage._on_frame_attachedc                 C   s&   | j | d|_| tjj| d S NT)r   removeZ	_detachedr   rK   r   r^   r   rs   rs   rt   r      s    zPage._on_frame_detached)r   rk   c                    s    j |_ j }|D ]}||jjs*q|jr< j| z>|	|I d H }W t
 jdkrt j fddd n,t
 jdkrt j fddd 0 |r d S q j|I d H  d S )Nr   c                      s      S rw   )_update_interception_patternsrs   rq   rs   rt   ru      rv   z Page._on_route.<locals>.<lambda>T)context_contextr   copymatchesrR   r   Zwill_expirer   handlelenr   r   _connectionZwrap_api_callr   r   )rr   r   Zroute_handlersZroute_handlerZhandledrs   rq   rt   r      s0    
zPage._on_routeBindingCall)binding_callrk   c                 C   s6   | j |jd }|r&t|| | j| d S )Nname)r   r   _initializerr   r   callr   rn   )rr   r   funcrs   rs   rt   rn     s    zPage._on_bindingra   )rV   rk   c                 C   s&   | j | | |_| tjj| d S rw   )r   r   r   r   rK   r   ra   )rr   rV   rs   rs   rt   r     s    zPage._on_workerc                 C   sN   d| _ | | jjv r | jj|  | | jjv r:| jj|  | tjj|  d S r   )	r   r   Z_pagesr   Z_background_pagesr   rK   r   rW   rq   rs   rs   rt   ry     s    zPage._on_closec                 C   s   |  tjj|  d S rw   )r   rK   r   rX   rq   rs   rs   rt   r|     s    zPage._on_crash)rp   rk   c                 C   s@   |d }|d }t tt|d }| tjjt| ||| d S )Nr   ZsuggestedFilenameartifact)r   r   r   r   rK   r   r   )rr   rp   r   Zsuggested_filenamer   rs   rs   rt   r}     s    zPage._on_downloadc                 C   s"   t |d }tt| j| d S )Nr   )r   r   rA   r   Z_artifact_ready)rr   rp   r   rs   rs   rt   r     s    zPage._on_videorF   c                 C   s   | j S rw   )r   rq   rs   rs   rt   r   #  s    zPage.contextc                    s   | j r| j  rd S | j S rw   )r   	is_closedrq   rs   rs   rt   rm   '  s    zPage.openerc                 C   s   | j S rw   )r   rq   rs   rs   rt   
main_frame,  s    zPage.main_frame)r   r   rk   c                 C   s^   |rt | jjd|nd }| jD ]6}|r<|j|kr<|  S |r"|r"||jr"|  S q"d S )NbaseURL)r.   r   _optionsr   r   r   r   r   )rr   r   r   matcherr   rs   rs   rt   r   0  s    

z
Page.framec                 C   s
   | j  S rw   )r   r   rq   rs   rs   rt   frames=  s    zPage.frames)timeoutrk   c                 C   s$   | j | | jdt|d d S )NZ"setDefaultNavigationTimeoutNoReplyr   )r   set_default_navigation_timeoutr   send_no_replydictrr   r   rs   rs   rt   r   A  s    
z#Page.set_default_navigation_timeoutc                 C   s$   | j | | jdt|d d S )NZsetDefaultTimeoutNoReplyr   )r   set_default_timeoutr   r   r   r   rs   rs   rt   r   G  s    zPage.set_default_timeout)selectorstrictrk   c                    s   | j ||I d H S rw   )r   query_selector)rr   r   r   rs   rs   rt   r   K  s    zPage.query_selector)r   rk   c                    s   | j |I d H S rw   )r   query_selector_allrr   r   rs   rs   rt   r   R  s    zPage.query_selector_all)ZattachedZdetachedhiddenZvisible)r   r   stater   rk   c                    s   | j jf i tt I d H S rw   )r   wait_for_selectorr3   locals)rr   r   r   r   r   rs   rs   rt   r   U  s    zPage.wait_for_selector)r   r   r   rk   c                    s   | j jf i tt I d H S rw   )r   
is_checkedr3   r   rr   r   r   r   rs   rs   rt   r   ^  s    zPage.is_checkedc                    s   | j jf i tt I d H S rw   )r   is_disabledr3   r   r   rs   rs   rt   r   c  s    zPage.is_disabledc                    s   | j jf i tt I d H S rw   )r   is_editabler3   r   r   rs   rs   rt   r   h  s    zPage.is_editablec                    s   | j jf i tt I d H S rw   )r   
is_enabledr3   r   r   rs   rs   rt   r   m  s    zPage.is_enabledc                    s   | j jf i tt I d H S rw   )r   	is_hiddenr3   r   r   rs   rs   rt   r   r  s    zPage.is_hiddenc                    s   | j jf i tt I d H S rw   )r   
is_visibler3   r   r   rs   rs   rt   r   w  s    zPage.is_visible)r   rh   	eventInitr   r   rk   c                    s   | j jf i tt I d H S rw   )r   dispatch_eventr3   r   )rr   r   rh   r   r   r   rs   rs   rt   r   |  s    zPage.dispatch_event
expressionargrk   c                    s   | j ||I d H S rw   )r   evaluaterr   r   r   rs   rs   rt   r     s    zPage.evaluatec                    s   | j ||I d H S rw   )r   evaluate_handler   rs   rs   rt   r     s    zPage.evaluate_handle)r   r   r   r   rk   c                    s   | j ||||I d H S rw   )r   eval_on_selector)rr   r   r   r   r   rs   rs   rt   r     s    zPage.eval_on_selector)r   r   r   rk   c                    s   | j |||I d H S rw   )r   eval_on_selector_all)rr   r   r   r   rs   rs   rt   r     s    zPage.eval_on_selector_all)r   pathcontentrh   rk   c                    s   | j jf i tt I d H S rw   )r   add_script_tagr3   r   )rr   r   r   r   rh   rs   rs   rt   r     s    zPage.add_script_tag)r   r   r   rk   c                    s   | j jf i tt I d H S rw   )r   add_style_tagr3   r   )rr   r   r   r   rs   rs   rt   r     s    zPage.add_style_tag)r   callbackrk   c                    s   |  | fddI d H  d S )Nc                    s    | S rw   rs   )sourceargsr   rs   rt   ru     rv   z&Page.expose_function.<locals>.<lambda>)expose_binding)rr   r   r   rs   r   rt   expose_function  s    zPage.expose_function)r   r   r   rk   c                    sd   || j v rtd| d|| jj v r6td| d|| j |< | jdt||pRddI d H  d S )Nz
Function "z" has been already registeredz4" has been already registered in the browser contextZexposeBindingF)r   ZneedsHandle)r   r   r   r   sendr   )rr   r   r   r   rs   rs   rt   r     s    


zPage.expose_binding)headersrk   c                    s"   | j dtt|dI d H  d S )NZsetExtraHTTPHeaders)r   )r   r   r   r@   )rr   r   rs   rs   rt   set_extra_http_headers  s    zPage.set_extra_http_headersc                 C   s   | j jS rw   )r   r   rq   rs   rs   rt   r     s    zPage.urlc                    s   | j  I d H S rw   )r   r   rq   rs   rs   rt   r     s    zPage.content)htmlr   	waitUntilrk   c                    s   | j jf i tt I d H S rw   )r   set_contentr3   r   )rr   r   r   r   rs   rs   rt   r     s    zPage.set_content)r   r   r   refererrk   c                    s   | j jf i tt I d H S rw   )r   gotor3   r   )rr   r   r   r   r   rs   rs   rt   r     s    z	Page.goto)r   r   rk   c                    s   t | jdtt I d H S )Nreloadr   r   r   r3   r   rr   r   r   rs   rs   rt   r     s    zPage.reload)rQ   rT   Znetworkidle)r   r   rk   c                    s   | j jf i tt I d H S rw   )r   wait_for_load_stater3   r   )rr   r   r   rs   rs   rt   r     s    zPage.wait_for_load_state)r   
wait_untilr   rk   c                    s   | j jf i tt I d H S rw   )r   wait_for_urlr3   r   rr   r   r   r   rs   rs   rt   r     s    zPage.wait_for_url)event	predicater   rk   c              	      sL   |  |||4 I d H }W d   I d H  qB1 I d H s80    Y  |I d H S rw   expect_event)rr   r   r  r   Z
event_infors   rs   rt   wait_for_event  s    *zPage.wait_for_eventc                    s   t | jdtt I d H S )NZgoBackr   r   rs   rs   rt   go_back  s    zPage.go_backc                    s   t | jdtt I d H S )NZ	goForwardr   r   rs   rs   rt   
go_forward  s    zPage.go_forward)nullprintZscreen)mediacolorSchemereducedMotionforcedColorsrk   c                    s   t t }d|v r*|d dkr"dn||d< d|v rJ|d dkrBdn||d< d|v rj|d dkrbdn||d< d|v r|d dkrdn||d< | jd|I d H  d S )Nr	  r  zno-overrider
  r  r  ZemulateMedia)r3   r   r   r   )rr   r	  r
  r  r  rp   rs   rs   rt   emulate_media  s    
zPage.emulate_media)rl   rk   c                    s$   || _ | jdtt I d H  d S )NZsetViewportSize)r   r   r   r3   r   )rr   rl   rs   rs   rt   set_viewport_size&  s    zPage.set_viewport_sizec                 C   s   | j S rw   )r   rq   rs   rs   rt   viewport_size*  s    zPage.viewport_sizec                    s   | j dI d H  d S )NZbringToFront)r   r   rq   rs   rs   rt   bring_to_front.  s    zPage.bring_to_front)scriptr   rk   c                    sF   |rt |I d H  }t|ts(td| jdt|dI d H  d S )Nz1Either path or script parameter must be specifiedZaddInitScript)r   )r1   decode
isinstancestrr   r   r   r   )rr   r  r   rs   rs   rt   add_init_script1  s
    
zPage.add_init_script)r   handlertimesrk   c                    sD   | j dtt| jjd||| jr(dnd| |  I d H  d S )Nr   r   TF)	r   insertr*   r.   r   r   r   Z_dispatcher_fiberr   )rr   r   r  r  rs   rs   rt   r   :  s    	z
Page.route)r   r  rk   c                    s.   t t fdd| j| _|  I d H  d S )Nc                    s   | j jkp o| j kS rw   )r   matchr  )rr  r   rs   rt   ru   M  rv   zPage.unroute.<locals>.<lambda>)listfilterr   r   )rr   r   r  rs   r  rt   unrouteH  s    zPage.unroute)attachembed)harr   	not_foundupdateupdate_contentupdate_moderk   c                    s\   |r$| j j|| |||dI d H  d S tj| jjt||p:d|dI d H }|| I d H  d S )N)r!  pager   r$  r%  abort)local_utilsfileZnot_found_actionZurl_matcher)r   Z_record_into_harr!   creater   r(  r  Zadd_page_route)rr   r!  r   r"  r#  r$  r%  Zrouterrs   rs   rt   route_from_harS  s     	zPage.route_from_harc                    s(   t | j}| jdd|iI d H  d S )NZsetNetworkInterceptionPatternspatterns)r*   Zprepare_interception_patternsr   r   r   )rr   r,  rs   rs   rt   r   m  s    z"Page._update_interception_patterns)ZjpegZpng)Zallowdisabled)hideinitial)cssZdevicerI   )r   rh   r   qualityomitBackgroundfullPageclip
animationscaretscalemask
mask_colorrk   c                    sx   t t }d|v r|d= d|v r:ttdd |d |d< | jd|I d H }t|}|rtt| t	||I d H  |S )Nr   r8  c                 S   s   | j j| jdS )N)r   r   )Z_framer   	_selector)locatorrs   rs   rt   ru     s    z!Page.screenshot.<locals>.<lambda>
screenshot)
r3   r   r  mapr   r   base64	b64decoder4   r2   )rr   r   rh   r   r1  r2  r3  r4  r5  r6  r7  r8  r9  rp   encoded_binarydecoded_binaryrs   rs   rt   r<  s  s     

zPage.screenshotc                    s   | j  I d H S rw   )r   titlerq   rs   rs   rt   rB    s    z
Page.title)runBeforeUnloadreasonrk   c              
      st   || _ z4| jdtt I d H  | jr8| j I d H  W n4 tyn } zt|sZ|sZ|W Y d }~n
d }~0 0 d S )NrL   )	r   r   r   r3   r   r   rL   	Exceptionr   )rr   rC  rD  ers   rs   rt   rL     s    z
Page.closec                 C   s   | j S rw   )r   rq   rs   rs   rt   r     s    zPage.is_closed)r   	modifierspositiondelaybutton
clickCountr   forcenoWaitAftertrialr   rk   c                    s   | j jf i tt I d H S rw   )r   clickr3   r   )rr   r   rG  rH  rI  rJ  rK  r   rL  rM  rN  r   rs   rs   rt   rO    s    z
Page.click)r   rG  rH  rI  rJ  r   rL  rM  r   rN  rk   c                    s   | j jf i tt I d H S rw   )r   dblclickr3   r   )rr   r   rG  rH  rI  rJ  r   rL  rM  r   rN  rs   rs   rt   rP    s    zPage.dblclick)	r   rG  rH  r   rL  rM  r   rN  rk   c	           	         s   | j jf i tt I d H S rw   )r   tapr3   r   )	rr   r   rG  rH  r   rL  rM  r   rN  rs   rs   rt   rQ    s    zPage.tap)r   valuer   rM  r   rL  rk   c                    s   | j jf i tt I d H S rw   )r   fillr3   r   )rr   r   rR  r   rM  r   rL  rs   rs   rt   rS    s    	z	Page.fill)r   has_texthas_not_texthashas_notrk   c                 C   s   | j j|||||dS )N)rT  rU  rV  rW  )r   r;  )rr   r   rT  rU  rV  rW  rs   rs   rt   r;    s    zPage.locator)textexactrk   c                 C   s   | j j||dS N)rY  )r   get_by_alt_textrr   rX  rY  rs   rs   rt   r[    s    zPage.get_by_alt_textc                 C   s   | j j||dS rZ  )r   get_by_labelr\  rs   rs   rt   r]    s    zPage.get_by_labelc                 C   s   | j j||dS rZ  )r   get_by_placeholderr\  rs   rs   rt   r^    s    zPage.get_by_placeholder)rolecheckedr-  expandedincludeHiddenlevelr   pressedselectedrY  rk   c                 C   s    | j j|||||||||	|
d
S )N)	r`  r-  ra  rb  rc  r   rd  re  rY  )r   get_by_role)rr   r_  r`  r-  ra  rb  rc  r   rd  re  rY  rs   rs   rt   rf    s    zPage.get_by_role)testIdrk   c                 C   s   | j |S rw   )r   get_by_test_id)rr   rg  rs   rs   rt   rh    s    zPage.get_by_test_idc                 C   s   | j j||dS rZ  )r   get_by_textr\  rs   rs   rt   ri    s    zPage.get_by_textc                 C   s   | j j||dS rZ  )r   get_by_titler\  rs   rs   rt   rj     s    zPage.get_by_titlerH   c                 C   s   | j |S rw   )r   frame_locatorr   rs   rs   rt   rk  %  s    zPage.frame_locatorc                    s   | j jf i tt I d H S rw   )r   focusr3   r   r   rs   rs   rt   rl  (  s    z
Page.focusc                    s   | j jf i tt I d H S rw   )r   text_contentr3   r   r   rs   rs   rt   rm  -  s    zPage.text_contentc                    s   | j jf i tt I d H S rw   )r   
inner_textr3   r   r   rs   rs   rt   rn  2  s    zPage.inner_textc                    s   | j jf i tt I d H S rw   )r   
inner_htmlr3   r   r   rs   rs   rt   ro  7  s    zPage.inner_html)r   r   r   r   rk   c                    s   | j jf i tt I d H S rw   )r   get_attributer3   r   )rr   r   r   r   r   rs   rs   rt   rp  <  s    zPage.get_attribute)	r   rG  rH  r   rM  rL  r   rN  rk   c	           	         s   | j jf i tt I d H S rw   )r   hoverr3   r   )	rr   r   rG  rH  r   rM  rL  r   rN  rs   rs   rt   rq  A  s    z
Page.hover)
r   targetsourcePositiontargetPositionrL  rM  r   r   rN  rk   c
           
         s   | j jf i tt I d H S rw   )r   drag_and_dropr3   r   )
rr   r   rr  rs  rt  rL  rM  r   r   rN  rs   rs   rt   ru  N  s    zPage.drag_and_dropr   )
r   rR  indexlabelr~   r   rM  rL  r   rk   c
                    s"   t t }
| jjf i |
I d H S rw   )r3   r   r   select_option)rr   r   rR  rv  rw  r~   r   rM  rL  r   rp   rs   rs   rt   rx  \  s    
zPage.select_optionc                    s"   t t }| jjf i |I d H S rw   )r3   r   r   input_value)rr   r   r   r   rp   rs   rs   rt   ry  k  s    
zPage.input_value)r   filesr   r   rM  rk   c                    s   | j jf i tt I d H S rw   )r   set_input_filesr3   r   )rr   r   rz  r   r   rM  rs   rs   rt   r{  q  s    zPage.set_input_files)r   rX  rI  r   rM  r   rk   c                    s   | j jf i tt I d H S rw   )r   rh   r3   r   )rr   r   rX  rI  r   rM  r   rs   rs   rt   rh   {  s    	z	Page.type)r   keyrI  r   rM  r   rk   c                    s   | j jf i tt I d H S rw   )r   pressr3   r   )rr   r   r|  rI  r   rM  r   rs   rs   rt   r}    s    	z
Page.press)r   rH  r   rL  rM  r   rN  rk   c                    s   | j jf i tt I d H S rw   )r   checkr3   r   rr   r   rH  r   rL  rM  r   rN  rs   rs   rt   r~    s    
z
Page.checkc                    s   | j jf i tt I d H S rw   )r   uncheckr3   r   r  rs   rs   rt   r    s    
zPage.uncheckc                    s   | j |I d H  d S rw   )r   wait_for_timeoutr   rs   rs   rt   r    s    zPage.wait_for_timeoutZraf)r   r   r   pollingrk   c                    s   | j jf i tt I d H S rw   )r   wait_for_functionr3   r   )rr   r   r   r   r  rs   rs   rt   r    s    zPage.wait_for_functionc                 C   s
   | j  S rw   )r   r   rq   rs   rs   rt   workers  s    zPage.workersrG   c                 C   s   | j jS rw   )r   rR   rq   rs   rs   rt   rR     s    zPage.requestc              	      s   | j j }| j j }| j d | j d zHtjt| j j	
d| jgtjdI d H  W | j | | j | n| j | | j | 0 d S )Nr   pause)Zreturn_when)r   r   default_navigation_timeoutdefault_timeoutr   r   r   waitr   r   r   r   ZFIRST_COMPLETEDZ$_set_default_navigation_timeout_implZ_set_default_timeout_impl)rr   r  r  rs   rs   rt   r    s(    
z
Page.pause)r7  displayHeaderFooterheaderTemplatefooterTemplateprintBackground	landscape
pageRangesformatwidthheightpreferCSSPageSizemarginr   rk   c                    sV   t t }d|v r|d= | jd|I d H }t|}|rRt| t||I d H  |S )Nr   pdf)r3   r   r   r   r>  r?  r4   r2   )rr   r7  r  r  r  r  r  r  r  r  r  r  r  r   rp   r@  rA  rs   rs   rt   r    s    

zPage.pdfc                 C   s   | j st| | _ | j S rw   )r   rA   rq   rs   rs   rt   r     s    
z
Page.videoc                 C   s   t | jp| j S rw   )r   r   r   Z_effective_close_reasonrq   rs   rs   rt   r     s    zPage._close_error_with_reasonc                 C   s   |  |||d| dS )Nzwaiting for event "")_expect_event)rr   r   r  r   rs   rs   rt   r    s    zPage.expect_event)r   r  r   log_linerk   c                    s   |d u r j  }t d| d}||d| d| d |rL|| |tjjkrn| tjjt	d |tjj
kr| tjj
 fdd | || t| S )	Nzpage.expect_event()zTimeout z%ms exceeded while waiting for event "r  zPage crashedc                      s      S rw   )r   rs   rq   rs   rt   ru     rv   z$Page._expect_event.<locals>.<lambda>)r   r   rB   Zreject_on_timeoutlogrK   r   rX   Zreject_on_eventr   rW   r  r   result)rr   r   r  r   r  waiterrs   rq   rt   r    s     

zPage._expect_event)r  r   rk   c                 C   s   |  tjj||S rw   )r  rK   r   rY   rr   r  r   rs   rs   rt   expect_console_message  s    zPage.expect_console_messagec                 C   s   |  tjj||S rw   )r  rK   r   r   r  rs   rs   rt   expect_download"  s    zPage.expect_downloadc                 C   s   |  tjj||S rw   )r  rK   r   r   r  rs   rs   rt   expect_file_chooser)  s    zPage.expect_file_chooserc                 C   s   | j |||S rw   )r   expect_navigationr   rs   rs   rt   r  0  s    zPage.expect_navigationc                 C   s   |  tjj||S rw   )r  rK   r   r`   r  rs   rs   rt   expect_popup8  s    zPage.expect_popup)url_or_predicater   rk   c                    sv   t |rd nt| jjd| t |r,|nd ttd fdd}t|}|r\d| nd }| jt	j
j|||dS )Nr   )rR   rk   c                    s     r  | jS r| S dS r   r   r   )rR   r   r  rs   rt   my_predicateM  s
    z)Page.expect_request.<locals>.my_predicatezwaiting for request r  r   r  )callabler.   r   r   r   r=   booltrim_urlr  rK   r   rr   r  r   r  Ztrimmed_urlr  rs   r  rt   expect_request?  s     zPage.expect_requestr=   c                 C   s   | j tjj||dS )N)r  r   )r  rK   r   r\   r  rs   rs   rt   expect_request_finished]  s    
zPage.expect_request_finishedc                    sv   t |rd nt| jjd| t |r,|nd ttd fdd}t|}|r\d| nd }| jt	j
j|||dS )Nr   )rS   rk   c                    s     r  | jS r| S dS r   r  )rS   r  rs   rt   r  t  s
    z*Page.expect_response.<locals>.my_predicatezwaiting for response r  )r  r.   r   r   r   r>   r  r  r  rK   r   r  rs   r  rt   expect_responsef  s     zPage.expect_responserJ   c                 C   s   |  d||S )NrU   r  r  rs   rs   rt   expect_websocket  s    zPage.expect_websocketc                 C   s   |  d||S r   r  r  rs   rs   rt   expect_worker  s    zPage.expect_worker)	r   r`  rH  r   rL  rM  r   rN  rk   c	           	   	      sF   |r$| j |||||||dI d H  n| j|||||||dI d H  d S )N)r   rH  r   rL  rM  r   rN  )r~  r  )	rr   r   r`  rH  r   rL  rM  r   rN  rs   rs   rt   set_checked  s&    
zPage.set_checked)NN)N)NNN)NN)NN)NN)NN)NN)NN)NNN)N)N)NN)N)NNNN)NNN)N)NN)NNN)NN)NN)NN)NN)NN)NN)NNNN)NN)N)N)NNNNN)NNNNNNNNNNNN)NN)
NNNNNNNNNN)	NNNNNNNNN)NNNNNNN)NNNN)NNNN)N)N)N)	NNNNNNNNN)N)N)NN)NN)NN)NN)NN)NNNNNNN)NNNNNNN)NNNNNNNN)NN)NNN)NNNN)NNNN)NNNNNN)NNNNNN)NNN)NNNNNNNNNNNNN)NN)NNN)NN)NN)NN)NNN)NN)N)NN)N)NN)NN)NNNNNN)__name__
__module____qualname__r   r   r   __annotations__r6   r7   r8   r   r  r   r   r   r    r   r   r?   r   rn   r   ry   r|   r   r}   r   propertyr   r	   rm   r   r-   r   r   r   floatr   r   r  r   r   r   rE   r   r   r   r   r   r   r   r   r:   r   r9   r   r   r   r   r   r   r   r   r   r   r   r   r   r#   r   r>   r   r   r   r   r  r  r  r"   r(   r$   r  r   r  r  r  r  r+   intr   r  r
   r)   r%   r+  r   r   bytesr<  rB  rL   r   r&   r   r'   rO  rP  rQ  rS  r;  r[  r]  r^  r   rf  rh  ri  rj  rk  rl  rm  rn  ro  rp  rq  ru  rx  ry  r   r{  rh   r}  r~  r  r  r  r  rR   r  r   r  rA   r   r   r   r   r  r  r   r  r   r  r   r  r  r  r/   r=   r  r  r0   r  r  r  r  __classcell__rs   rs   r   rt   rK   f   s  
^  
	  
	 
   

     
 		     
    
           
%
                                                        
                     	            


    	 	 	  
 
    	      rK   c                       s   e Zd ZeddZeeeedd fddZeddd	Z	ddd
dZ
eedddZdeeedddZdeeedddZ  ZS )ra   rL   )rW   Nrf   c                    s8   t  ||||  jd fdd d  _d  _d S )NrL   c                    s      S rw   rx   rz   rq   rs   rt   ru     rv   z!Worker.__init__.<locals>.<lambda>)r   r   r   r   r   r   r   r   rq   rt   r     s    zWorker.__init__r   c                 C   s   d| j dS )Nz<Worker url=r   r   rq   rs   rs   rt   r     s    zWorker.__repr__c                 C   s<   | j r| j j|  | jr(| jj|  | tjj|  d S rw   )	r   r   r   r   Z_service_workersr   ra   r   rW   rq   rs   rs   rt   ry     s
    zWorker._on_closec                 C   s
   | j d S )Nr   )r   rq   rs   rs   rt   r     s    z
Worker.urlr   c                    s$   t | jdt|t|dI d H S )NZevaluateExpressionr   r   )r;   r   r   r   r<   r   rs   rs   rt   r     s    zWorker.evaluatec                    s$   t | jdt|t|dI d H S )NZevaluateExpressionHandler  )r   r   r   r   r<   r   rs   rs   rt   r     s    zWorker.evaluate_handle)N)N)r  r  r  r   r   r   r  r   r   r   ry   r  r   r:   r   r   r9   r   r  rs   rs   r   rt   ra     s   
 ra   c                       s:   e Zd Zeeeedd fddZeddddZ  Z	S )r   Nrf   c                    s   t  |||| d S rw   )r   r   r   r   rs   rt   r     s    zBindingCall.__init__)r   rk   c                    s   zt | jd }t|jj|j|d}| jdrF||t | jd }n$ttt| jd }||g|R  }t	
|r~|I d H }| jdtt|dI d H  W nV ty } z>t d }t| jdttt||d	d	 W Y d }~n
d }~0 0 d S )
Nr   )r   r&  r   r   r   resolve)r     reject)error)r   r   r   r   r   r   r  r=  r;   inspectiscoroutiner   r   r<   rE  sysexc_infor   r   r5   )rr   r   r   r   r  	func_argsrF  tbrs   rs   rt   r     s"    

"zBindingCall.call)
r  r  r  r   r  r   r   r   r   r  rs   rs   r   rt   r     s   r   )paramrk   c                 C   s,   t | tjrt| jS t | tr(t| S d S rw   )r  rer
   trim_endpatternr  )r  rs   rs   rt   r     s
    

r  )srk   c                 C   s    t | dkr| d d d S | S )N2   u   …)r   )r  rs   rs   rt   r    s    r  )lr   r>  r  r  r  pathlibr   typesr   typingr   r   r   r   r   r	   r
   r   r   Zplaywright._impl._accessibilityr   Z playwright._impl._api_structuresr   r   r   r   r   r   Zplaywright._impl._artifactr   Zplaywright._impl._connectionr   r   r   Z!playwright._impl._console_messager   Zplaywright._impl._downloadr   Z playwright._impl._element_handler   Zplaywright._impl._errorsr   r   r   Z'playwright._impl._event_context_managerr   Zplaywright._impl._file_chooserr   Zplaywright._impl._framer    Zplaywright._impl._har_routerr!   Zplaywright._impl._helperr"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   Zplaywright._impl._inputr6   r7   r8   Zplaywright._impl._js_handler9   r:   r;   r<   Zplaywright._impl._networkr=   r>   r?   r@   Zplaywright._impl._videorA   Zplaywright._impl._waiterrB   version_inforE   Ztyping_extensionsZ!playwright._impl._browser_contextrF   Zplaywright._impl._fetchrG   Zplaywright._impl._locatorrH   rI   rJ   rK   ra   r   r  r  r  rs   rs   rs   rt   <module>   s\   , X        U2