a
    Ò�éiÎW  ã                   @   sà  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mZ d dlmZmZmZmZ d dlmZ d dlmZ d dlmZmZmZmZ d d	l m!Z! d d
l"m#Z# d dl$m%Z%m&Z& d dl'm(Z( d dl)m*Z* d dl+m,Z, d dl-m.Z. d dl/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z> d dl?m@Z@mAZAmBZBmCZC d dlDmEZEmFZFmGZG d dlHmIZI d dlJmKZK d dlLmMZM e�r¦d dlNmOZO ejPdk�rÀd dlmQZQ nd dlRmQZQ G dd„ deƒZSdS )é    N)ÚPath)ÚSimpleNamespace)
ÚTYPE_CHECKINGÚAnyÚCallableÚDictÚListÚOptionalÚPatternÚSetÚUnionÚcast)ÚCookieÚGeolocationÚSetCookieParamÚStorageState)ÚArtifact)Ú
CDPSession)ÚChannelOwnerÚfilter_noneÚfrom_channelÚfrom_nullable_channel)ÚConsoleMessage)ÚDialog)ÚErrorÚTargetClosedError)ÚEventContextManagerImpl)ÚAPIRequestContext)ÚFrame)Ú	HarRouter)ÚHarContentPolicyÚHarModeÚHarRecordingMetadataÚRouteFromHarNotFoundPolicyÚRouteHandlerÚRouteHandlerCallbackÚTimeoutSettingsÚURLMatchÚ
URLMatcherÚasync_readfileÚasync_writefileÚlocals_to_paramsÚparse_errorÚprepare_record_har_optionsÚto_impl)ÚRequestÚResponseÚRouteÚserialize_headers)ÚBindingCallÚPageÚWorker)ÚTracing)ÚWaiter)ÚWebError)ÚBrowser)é   é   )ÚLiteralc                       s†  e Zd Zeddddddddd	d
dd�Z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eddœdd„Zee ddœd d!„Zeddœd"d#„Zee ddœd$d%„Zeee
 dœd&d'„ƒZeed( dœd)d*„ƒZeedd+œd,d-„Ze
dœd.d/„Zd—eeee f ee d0œd1d2„Zee dd3œd4d5„Z ddœd6d7„Z!d˜ee edd8œd9d:„Z"ddœd;d<„Z#d™e$dd=œd>d?„Z%eeef dd@œdAdB„Z&e'ddCœdDdE„Z(dšeeee)f ddFœdGdH„Z*d›ee+e'ddIœdJdK„Z,ee+ddLœdMdN„Z-dœe.e/e0ddOœdPdQ„Z1d�e.ee/ ddRœdSdT„Z2džee)ef ee
 ee3e ef e4e5ddUœdVdW„Z6dŸee)ef ee3e ef e7e'e8dX e5ddYœdZd[„Z9ddœd\d]„Z:d ee+ee;d^œd_d`„Z<ddœdadb„Z=d¡eddcœddde„Z>d¢eee)f e?dfœdgdh„Z@ee dœdidj„ZAd£ee+eeBd^œdkdl„ZCd¤e+eDge'f ee;eD dmœdndo„ZEd¥e+e
ge'f ee;e
 dmœdpdq„ZFe
ddœdrds„ZGeHddtœdudv„ZIeJeee ee
 ddwœdxdy„ZKeJeeL eee
 ddzœd{d|„ZMedd}œd~d„ZNeOdd€œd�d‚„ZPeQee
 ddƒœd„d…„ZReJee
 dd†œd‡dˆ„ZSeLee
 dd‰œdŠd‹„ZTeee
 dœdŒd�„ƒZUeeeH dœdŽd�„ƒZVee
eWf eXdœd�d‘„ZYeeZdœd’d“„ƒZ[ed”dœd•d–„ƒZ\‡  Z]S )¦ÚBrowserContextZbackgroundpageÚcloseÚconsoleÚdialogÚpageZweberrorZserviceworkerÚrequestÚresponseZrequestfailedZrequestfinished)ÚBackgroundPageÚCloseÚConsoler   r4   r8   ÚServiceWorkerr/   r0   ÚRequestFailedÚRequestFinishedN)ÚparentÚtypeÚguidÚinitializerÚreturnc                    s(  t ƒ  ||||¡ d ˆ _|jjdkr>td|ƒˆ _ˆ jj ˆ ¡ g ˆ _g ˆ _	i ˆ _
td ƒˆ _d ˆ _i ˆ _tƒ ˆ _tƒ ˆ _ttt|d ƒƒˆ _i ˆ _t|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„¡ ˆ j d‡ fdd„¡ ˆ j d‡ fdd„¡ t ¡ ˆ _ˆ  ˆ jj‡ fd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i¡ d ˆ _(d S )!Nr9   ÚtracingZrequestContextZbindingCallc                    s   ˆ   t| d ƒ¡S )NZbinding)Ú_on_bindingr   ©Úparams©Úself© úQ/home/Claro/venv/lib/python3.9/site-packages/playwright/_impl/_browser_context.pyÚ<lambda>{   ó    z)BrowserContext.__init__.<locals>.<lambda>r>   c                    s   ˆ   ¡ S ©N)Ú	_on_close)Ú_rS   rU   rV   rW   }   rX   rA   c                    s   ˆ   t| d ƒ¡S ©NrA   )Ú_on_pager   rQ   rS   rU   rV   rW      rX   Úroutec                    s   t  ˆ  t|  d¡ƒ¡¡S )Nr^   )ÚasyncioÚcreate_taskÚ	_on_router   ÚgetrQ   rS   rU   rV   rW   ƒ   s   ÿÿZbackgroundPagec                    s   ˆ   t| d ƒ¡S r\   )Ú_on_background_pager   rQ   rS   rU   rV   rW   Œ   rX   ZserviceWorkerc                    s   ˆ   t| d ƒ¡S )NÚworker)Ú_on_service_workerr   rQ   rS   rU   rV   rW   ‘   rX   r?   c                    s
   ˆ   | ¡S rY   )Ú_on_console_message)ÚeventrS   rU   rV   rW   •   rX   r@   c                    s   ˆ   t| d ƒ¡S )Nr@   )Ú
_on_dialogr   rQ   rS   rU   rV   rW   ™   rX   Z	pageErrorc                    s    ˆ   t| d d ƒt| d ƒ¡S )NÚerrorrA   )Ú_on_page_errorr,   r   rQ   rS   rU   rV   rW   �   s   
þrB   c                    s   ˆ   t| d ƒt|  d¡ƒ¡S )NrB   rA   )Ú_on_requestr   r   rb   rQ   rS   rU   rV   rW   ¤   s   
þrC   c                    s   ˆ   t| d ƒt|  d¡ƒ¡S )NrC   rA   )Ú_on_responser   r   rb   rQ   rS   rU   rV   rW   «   s   
þZrequestFailedc              	      s,   ˆ   t| d ƒ| d |  d¡t|  d¡ƒ¡S )NrB   ÚresponseEndTimingZfailureTextrA   )Ú_on_request_failedr   rb   r   rQ   rS   rU   rV   rW   ²   s
   
üZrequestFinishedc              	      s0   ˆ   t| d ƒt|  d¡ƒ| d t|  d¡ƒ¡S )NrB   rC   rm   rA   )Ú_on_request_finishedr   r   rb   rQ   rS   rU   rV   rW   »   s
   
üc                    s   ˆ j  d¡S ©NT)Ú_closed_futureÚ
set_result)ÚcontextrS   rU   rV   rW   Ä   rX   F))ÚsuperÚ__init__Ú_browserÚ	__class__Ú__name__r   Ú	_contextsÚappendÚ_pagesÚ_routesÚ	_bindingsr&   Ú_timeout_settingsÚ_owner_pageÚ_optionsÚsetÚ_background_pagesÚ_service_workersr6   r   Ú_tracingÚ_har_recordersÚ_requestÚ_channelÚonr_   ZFuturerq   ÚonceÚEventsrE   Ú_close_reasonZ"_set_event_to_subscription_mappingr=   rF   r   r/   r0   rI   rH   Ú_close_was_called)rT   rJ   rK   rL   rM   ©rw   rS   rV   ru   e   sœ    

þÿ
þ	
þ
þ
þÿ
þ
þ
þ
þ	
þ	
ÿúÿ
zBrowserContext.__init__©rN   c                 C   s   d| j › d�S )Nz<BrowserContext browser=ú>)ÚbrowserrS   rU   rU   rV   Ú__repr__Ó   s    zBrowserContext.__repr__)rA   rN   c                 C   sB   | j  |¡ |  tjj|¡ |jr>|j ¡ s>|j tjj|¡ d S rY   )	r{   rz   Úemitr=   rŠ   r4   Ú_openerZ	is_closedZPopup©rT   rA   rU   rU   rV   r]   Ö   s    zBrowserContext._on_page)r^   rN   c                 ƒ   sÈ   ˆ |_ ˆ j ¡ }|D ]œ}| |jj¡s(q|jr:ˆ j |¡ z>| |¡I d H }W t	ˆ jƒdkr¦t
 ˆ j ‡ fdd„d¡¡ n,t	ˆ jƒdkr¤t
 ˆ j ‡ fdd„d¡¡ 0 |r d S q|jdd�I d H  d S )Nr   c                      s   ˆ   ¡ S rY   )Ú_update_interception_patternsrU   rS   rU   rV   rW   ê   rX   z*BrowserContext._on_route.<locals>.<lambda>T)Zis_internal)Ú_contextr|   ÚcopyÚmatchesrB   ÚurlZwill_expireÚremoveÚhandleÚlenr_   r`   Ú_connectionÚwrap_api_callZ_internal_continue)rT   r^   Zroute_handlersZroute_handlerZhandledrU   rS   rV   ra   Ü   s0    
ÿÿÿÿÿzBrowserContext._on_route)Úbinding_callrN   c                 C   s2   | j  |jd ¡}|d u rd S t | |¡¡ d S )NÚname)r}   rb   Z_initializerr_   r`   Úcall)rT   rŸ   ÚfuncrU   rU   rV   rP   ñ   s    zBrowserContext._on_binding)ÚtimeoutrN   c                 C   s
   |   |¡S rY   )Ú$_set_default_navigation_timeout_impl©rT   r£   rU   rU   rV   Úset_default_navigation_timeout÷   s    z-BrowserContext.set_default_navigation_timeoutc                 C   s.   | j  |¡ | j d|d u r i nd|i¡ d S )NZ"setDefaultNavigationTimeoutNoReplyr£   )r~   r¦   r‡   Úsend_no_replyr¥   rU   rU   rV   r¤   ú   s
    þz3BrowserContext._set_default_navigation_timeout_implc                 C   s
   |   |¡S rY   )Ú_set_default_timeout_implr¥   rU   rU   rV   Úset_default_timeout  s    z"BrowserContext.set_default_timeoutc                 C   s.   | j  |¡ | j d|d u r i nd|i¡ d S )NZsetDefaultTimeoutNoReplyr£   )r~   r©   r‡   r§   r¥   rU   rU   rV   r¨     s    ÿz(BrowserContext._set_default_timeout_implc                 C   s
   | j  ¡ S rY   )r{   r—   rS   rU   rU   rV   Úpages
  s    zBrowserContext.pagesr9   c                 C   s   | j S rY   )rv   rS   rU   rU   rV   r�     s    zBrowserContext.browser)Úcontext_optionsÚbrowser_optionsrN   c                 C   sJ   || _ | j  d¡r8| j d d | j d  d¡dœ| jd< | d¡| j_d S )NZ	recordHarÚpathÚcontent©r­   r®   Ú Z	tracesDir)r€   rb   r…   r„   Z_traces_dir)rT   r«   r¬   rU   rU   rV   Ú_set_options  s    þzBrowserContext._set_optionsc                 Ã   s$   | j rtdƒ‚t| j d¡I d H ƒS )Nz Please use browser.new_context()ZnewPage)r   r   r   r‡   ÚsendrS   rU   rU   rV   Únew_page  s    zBrowserContext.new_page)ÚurlsrN   c                 Ã   s6   |d u rg }t |tƒs|g}| j dt|d�¡I d H S )NÚcookies)r´   )Ú
isinstanceÚlistr‡   r²   Údict)rT   r´   rU   rU   rV   rµ      s
    
zBrowserContext.cookies)rµ   rN   c                 Ã   s   | j  dt|d�¡I d H  d S )NZ
addCookies)rµ   ©r‡   r²   r¸   )rT   rµ   rU   rU   rV   Úadd_cookies'  s    zBrowserContext.add_cookiesc                 Ã   s   | j  d¡I d H  d S )NZclearCookies©r‡   r²   rS   rU   rU   rV   Úclear_cookies*  s    zBrowserContext.clear_cookies)ÚpermissionsÚoriginrN   c                 Ã   s   | j  dttƒ ƒ¡I d H  d S )NZgrantPermissions©r‡   r²   r+   Úlocals)rT   r½   r¾   rU   rU   rV   Úgrant_permissions-  s    z BrowserContext.grant_permissionsc                 Ã   s   | j  d¡I d H  d S )NZclearPermissionsr»   rS   rU   rU   rV   Úclear_permissions2  s    z BrowserContext.clear_permissions)ÚgeolocationrN   c                 Ã   s   | j  dttƒ ƒ¡I d H  d S )NZsetGeolocationr¿   )rT   rÃ   rU   rU   rV   Úset_geolocation5  s    zBrowserContext.set_geolocation)ÚheadersrN   c                 Ã   s"   | j  dtt|ƒd�¡I d H  d S )NZsetExtraHTTPHeaders)rÅ   )r‡   r²   r¸   r2   )rT   rÅ   rU   rU   rV   Úset_extra_http_headers8  s    ÿz%BrowserContext.set_extra_http_headers)ÚofflinerN   c                 Ã   s   | j  dt|d�¡I d H  d S )NZ
setOffline)rÇ   r¹   )rT   rÇ   rU   rU   rV   Úset_offline=  s    zBrowserContext.set_offline)Úscriptr­   rN   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)Úsource)r)   Údecoder¶   Ústrr   r‡   r²   r¸   )rT   rÉ   r­   rU   rU   rV   Úadd_init_script@  s
    
zBrowserContext.add_init_script)r    Úcallbackr›   rN   c                 Ã   sn   | j D ]}||jv rtd|› d�ƒ‚q|| jv r@td|› d�ƒ‚|| j|< | j dt||p\dd�¡I d H  d S )Nz
Function "z1" has been already registered in one of the pagesz" has been already registeredZexposeBindingF)r    ZneedsHandle)r{   r}   r   r‡   r²   r¸   )rT   r    rÎ   r›   rA   rU   rU   rV   Úexpose_bindingI  s    


ÿ

ÿzBrowserContext.expose_binding)r    rÎ   rN   c                 ƒ   s   |   |‡ fdd„¡I d H  d S )Nc                    s   ˆ |Ž S rY   rU   )rÊ   Úargs©rÎ   rU   rV   rW   Y  rX   z0BrowserContext.expose_function.<locals>.<lambda>)rÏ   )rT   r    rÎ   rU   rÑ   rV   Úexpose_functionX  s    zBrowserContext.expose_function)r™   ÚhandlerÚtimesrN   c                 Ã   sB   | j  dtt| j d¡|ƒ|| jr&dnd|ƒ¡ |  ¡ I d H  d S )Nr   ZbaseURLTF)r|   Úinsertr$   r(   r€   rb   Ú_dispatcher_fiberr•   )rT   r™   rÓ   rÔ   rU   rU   rV   r^   [  s    üþ	zBrowserContext.route)r™   rÓ   rN   c                 ƒ   s.   t t‡ ‡fdd„| jƒƒ| _|  ¡ I d H  d S )Nc                    s   | j jˆkpˆ o| jˆ kS rY   )ZmatcherÚmatchrÓ   )Úr©rÓ   r™   rU   rV   rW   n  rX   z(BrowserContext.unroute.<locals>.<lambda>)r·   Úfilterr|   r•   )rT   r™   rÓ   rU   rÙ   rV   Úunroutei  s    þÿzBrowserContext.unroute)ÚharrA   r™   Úupdate_contentÚupdate_moderN   c                 Ã   s\   dt ||pd|pd|dœƒi}|r,|j|d< | j d|¡I d H }t|ƒ|pLddœ| j|< d S )NÚoptionsÚattachZminimal)ZrecordHarPathZrecordHarContentZrecordHarModeZrecordHarUrlFilterrA   ZharStartr¯   )r-   r‡   r²   rÌ   r…   )rT   rÜ   rA   r™   rÝ   rÞ   rR   Úhar_idrU   rU   rV   Ú_record_into_hart  s    	üÿÿ

þzBrowserContext._record_into_har)rà   Úembed)rÜ   r™   Ú	not_foundÚupdaterÝ   rÞ   rN   c                 Ã   sZ   |r"| j |d |||d�I d H  d S tj| jjt|ƒ|p8d|d�I d H }| | ¡I d H  d S )N)rÜ   rA   r™   rÝ   rÞ   Úabort)Úlocal_utilsÚfileZnot_found_actionZurl_matcher)râ   r   Úcreater�   rç   rÌ   Zadd_context_route)rT   rÜ   r™   rä   rå   rÝ   rÞ   ZrouterrU   rU   rV   Úroute_from_harŽ  s     	ûüzBrowserContext.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²   )rT   rë   rU   rU   rV   r•   ¨  s    ÿz,BrowserContext._update_interception_patterns)rg   Ú	predicater£   rN   c                 C   sz   |d u r| j  ¡ }t| d|› d�ƒ}| |d|› d|› d�¡ |tjjkr`| | tjjdd„ ¡ | | ||¡ t	| 
¡ ƒS )Nzbrowser_context.expect_event(ú)zTimeout z%ms exceeded while waiting for event "ú"c                   S   s   t ƒ S rY   )r   rU   rU   rU   rV   rW   ¼  rX   z-BrowserContext.expect_event.<locals>.<lambda>)r~   r£   r7   Zreject_on_timeoutr=   rŠ   rE   Zreject_on_eventÚwait_for_eventr   Úresult)rT   rg   rì   r£   ÚwaiterrU   rU   rV   Úexpect_event®  s    
ÿÿzBrowserContext.expect_eventc                 C   s(   | j r| j j | ¡ |  tjj| ¡ d S rY   )rv   ry   rš   r’   r=   rŠ   rE   rS   rU   rU   rV   rZ   Á  s    zBrowserContext._on_close)ÚreasonrN   c                 ƒ   sj   ˆ j r
d S |ˆ _dˆ _ d dœ‡ fdd„}ˆ jj |d¡I d H  ˆ j dtd|iƒ¡I d H  ˆ jI d H  d S )NTrŽ   c               	   “   sÈ   ˆ j  ¡ D ]¸\} }tttˆ j dd| i¡I d H ƒƒ}| d¡dkpN|d  d¡}|d  d¡}|r |s |d d }| 	|¡I d H  ˆ j
jj||d d�I d H  n| 	|d ¡I d H  | ¡ I d H  q
d S )	NZ	harExportZharIdr®   rà   r­   z.zipz.tmp)ZzipFileZharFile)r…   Úitemsr   r   r   r‡   r²   rb   ÚendswithZsave_asr�   rç   Z	har_unzipÚdelete)rá   rR   rÜ   Zis_compressedZneed_compressedZtmp_pathrS   rU   rV   Ú_inner_closeÍ  s*    ÿþÿþÿz*BrowserContext.close.<locals>._inner_closer>   ró   )rŒ   r‹   r‡   r�   rž   r²   r   rq   )rT   ró   r÷   rU   rS   rV   r>   Ç  s    zBrowserContext.close)r­   rN   c                 Ã   s0   | j  d¡I d H }|r,t|t |¡ƒI d H  |S )NZstorageState)r‡   Zsend_return_as_dictr*   ÚjsonÚdumps)rT   r­   rð   rU   rU   rV   Ústorage_stateè  s    zBrowserContext.storage_statec                 C   s   | j r| j S | jr| jj S d S rY   )r‹   rv   rS   rU   rU   rV   Ú_effective_close_reasonî  s
    z&BrowserContext._effective_close_reasonc              	   Ã   sL   |   |||¡4 I d H š}W d   ƒI d H  qB1 I d H s80    Y  |I d H S rY   )rò   )rT   rg   rì   r£   Z
event_inforU   rU   rV   rï   õ  s    *zBrowserContext.wait_for_event)rì   r£   rN   c                 C   s   |   tjj||¡S rY   )rò   r4   rŠ   rF   ©rT   rì   r£   rU   rU   rV   Úexpect_console_messageü  s    z%BrowserContext.expect_console_messagec                 C   s   |   tjj||¡S rY   )rò   r=   rŠ   r4   rü   rU   rU   rV   Úexpect_page  s    zBrowserContext.expect_pagec                 C   s    | j  |¡ |  tjj|¡ d S rY   )r‚   Úaddr’   r=   rŠ   rD   r”   rU   rU   rV   rc   
  s    z"BrowserContext._on_background_page)rd   rN   c                 C   s&   | |_ | j |¡ |  tjj|¡ d S rY   )r–   rƒ   rÿ   r’   r=   rŠ   rG   )rT   rd   rU   rU   rV   re     s    z!BrowserContext._on_service_worker)rB   Úresponse_end_timingÚfailure_textrA   rN   c                 C   s8   ||_ | |¡ |  tjj|¡ |r4| tjj|¡ d S rY   )Z_failure_textÚ_set_response_end_timingr’   r=   rŠ   rH   r4   )rT   rB   r   r  rA   rU   rU   rV   rn     s
    
z!BrowserContext._on_request_failed)rB   rC   r   rA   rN   c                 C   sB   |  |¡ |  tjj|¡ |r.| tjj|¡ |r>|j d¡ d S rp   )r  r’   r=   rŠ   rI   r4   Z_finished_futurerr   )rT   rB   rC   r   rA   rU   rU   rV   ro      s    
z#BrowserContext._on_request_finished)rg   rN   c                 C   s>   t || j| jƒ}|  tjj|¡ |j}|r:| tjj|¡ d S rY   )	r   Ú_looprÖ   r’   r=   rŠ   rF   rA   r4   )rT   rg   ÚmessagerA   rU   rU   rV   rf   .  s
    z"BrowserContext._on_console_message)r@   rN   c                 C   s^   |   tjj|¡}|j}|r.|  tjj|¡p,|}|sZ|jdkrLt | 	¡ ¡ nt | 
¡ ¡ d S )NZbeforeunload)r’   r=   rŠ   r   rA   r4   rK   r_   r`   ÚacceptZdismiss)rT   r@   Zhas_listenersrA   rU   rU   rV   rh   5  s    
zBrowserContext._on_dialog)ri   rA   rN   c                 C   s2   |   tjjt| j||ƒ¡ |r.|  tjj|¡ d S rY   )r’   r=   rŠ   r8   r  r4   Z	PageError)rT   ri   rA   rU   rU   rV   rj   D  s    zBrowserContext._on_page_error)rB   rA   rN   c                 C   s(   |   tjj|¡ |r$|  tjj|¡ d S rY   )r’   r=   rŠ   r/   r4   )rT   rB   rA   rU   rU   rV   rk   I  s    zBrowserContext._on_request)rC   rA   rN   c                 C   s(   |   tjj|¡ |r$|  tjj|¡ d S rY   )r’   r=   rŠ   r0   r4   )rT   rC   rA   rU   rU   rV   rl   N  s    zBrowserContext._on_responsec                 C   s
   t | jƒS rY   )r·   r‚   rS   rU   rU   rV   Úbackground_pagesS  s    zBrowserContext.background_pagesc                 C   s
   t | jƒS rY   )r·   rƒ   rS   rU   rU   rV   Úservice_workersW  s    zBrowserContext.service_workersc                 Ã   sX   t |ƒ}i }t|tƒr"|j|d< nt|tƒr8|j|d< ntdƒ‚t| j d|¡I d H ƒS )NrA   Úframezpage: expected Page or FrameZnewCDPSession)r.   r¶   r4   r‡   r   r   r   r²   )rT   rA   rR   rU   rU   rV   Únew_cdp_session[  s    

zBrowserContext.new_cdp_sessionc                 C   s   | j S rY   )r„   rS   rU   rU   rV   rO   f  s    zBrowserContext.tracingr   c                 C   s   | j S rY   )r†   rS   rU   rU   rV   rB   j  s    zBrowserContext.request)N)N)N)NN)N)N)N)NNNN)NNNNN)NN)N)N)NN)NN)NN)^rx   Ú
__module__Ú__qualname__r   rŠ   r   rÌ   r   ru   r‘   r4   r]   r1   ra   r3   rP   Úfloatr¦   r	   r¤   r©   r¨   Úpropertyr   rª   r�   r±   r³   r   r   rµ   r   rº   r¼   rÁ   rÂ   r   rÄ   rÆ   ÚboolrÈ   r   rÍ   r   rÏ   rÒ   r'   r%   Úintr^   rÛ   r
   r    r!   râ   r#   r<   rê   r•   r   rò   rZ   r>   r   rú   rû   r   rï   r   rý   rþ   rc   r5   re   r/   rn   r0   ro   rf   r   rh   r   rj   rk   rl   r  r  r   r   r	  r6   rO   rB   Ú__classcell__rU   rU   r�   rV   r=   V   s*  õþn	" ÿþ ÿþ
 ÿþ ÿþ ÿþ    ú
ù     ù
ø	  üû! ÿþ	  ýü	  ýüúúr=   )Tr_   rø   ÚsysÚpathlibr   Útypesr   Útypingr   r   r   r   r   r	   r
   r   r   r   Z playwright._impl._api_structuresr   r   r   r   Zplaywright._impl._artifactr   Zplaywright._impl._cdp_sessionr   Zplaywright._impl._connectionr   r   r   r   Z!playwright._impl._console_messager   Zplaywright._impl._dialogr   Zplaywright._impl._errorsr   r   Z'playwright._impl._event_context_managerr   Zplaywright._impl._fetchr   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-   r.   Zplaywright._impl._networkr/   r0   r1   r2   Zplaywright._impl._pager3   r4   r5   Zplaywright._impl._tracingr6   Zplaywright._impl._waiterr7   Zplaywright._impl._web_errorr8   Zplaywright._impl._browserr9   Úversion_infor<   Ztyping_extensionsr=   rU   rU   rU   rV   Ú<module>   s8   0D