
    g                     v    d dl Z d dlmZmZmZmZ d dlmZ d dlm	Z	m
Z
 d dlmZmZ  G d de	      Zded	efd
Zy)    N)DictListOptionalcast)HeadersArray)ChannelOwner
StackFrame)HarLookupResultlocals_to_paramsc                        e Zd Zdededededdf
 fdZdeddfd	Zd
eddfdZ	 ddededede	de
dee   defdZdeddfdZdededdfdZdee   dedefdZdeddfdZdedee   ddfdZ xZS ) 
LocalUtilsparenttypeguidinitializerreturnNc                     t         |   ||||       | j                  j                          |d   D ci c]  }|d   t	        |d          c}| _        y c c}w )NdeviceDescriptorsname
descriptor)super__init___channelmark_as_internal_typeparse_device_descriptordevices)selfr   r   r   r   device	__class__s         R/var/www/openai/venv/lib/python3.12/site-packages/playwright/_impl/_local_utils.pyr   zLocalUtils.__init__   sh     	t[9++- &&9:
: 6N3F<4HII:
 
s   Aparamsc                 X   K   | j                   j                  d|       d {    y 7 w)Nzipr   send)r   r!   s     r    r#   zLocalUtils.zip"   s      mm  ///s    *(*filec                 ~   K   t        t                     }| j                  j                  d|       d {    y 7 w)NharOpenr   localsr   r%   )r   r&   r!   s      r    har_openzLocalUtils.har_open%   s,     !&(+mm  F333   3=;=harIdurlmethodheadersisNavigationRequestpostDatac                    K   t        t                     }d|v r)t        j                  |d         j	                         |d<   t        t        | j                  j                  d|       d {         S 7 w)Nr2   	harLookup)	r   r*   base64	b64encodedecoder   r
   r   send_return_as_dict)r   r-   r.   r/   r0   r1   r2   r!   s           r    
har_lookupzLocalUtils.har_lookup)   si      "&(+!'!1!1&2D!E!L!L!NF:--33KHH
 	
Hs   A*A7,A5
-	A7c                 ~   K   t        t                     }| j                  j                  d|       d {    y 7 w)NharCloser)   )r   r-   r!   s      r    	har_closezLocalUtils.har_close:   ,     !&(+mm  V444r,   zipFileharFilec                 ~   K   t        t                     }| j                  j                  d|       d {    y 7 w)NharUnzipr)   )r   r>   r?   r!   s       r    	har_unzipzLocalUtils.har_unzip>   r=   r,   	tracesDir	traceNamec                 |   K   t        t                     }| j                  j                  d|       d {   S 7 w)NtracingStartedr)   )r   rC   rD   r!   s       r    tracing_startedzLocalUtils.tracing_startedB   s0     !&(+]]''(8&AAAAs   3<:<	stacks_idc                 Z   K   | j                   j                  dd|i       d {   S 7 w)NtraceDiscardedstacksIdr$   )r   rH   s     r    trace_discardedzLocalUtils.trace_discardedF   s)     ]]''(8:y:QRRRRs   "+)+idframesc                 F    | j                   j                  dd||di       y )NaddStackToTracingNoReplycallData)stackrM   )r   send_no_reply)r   rM   rN   s      r    add_stack_to_tracing_no_replyz(LocalUtils.add_stack_to_tracing_no_replyI   s*    ##&#	
    )N)__name__
__module____qualname__r   strr   r   r#   r+   r   boolr   bytesr
   r9   r<   rB   rG   rL   intr   r	   rT   __classcell__)r   s   @r    r   r      s.   
"
*-
58
GK
	
0 0 043 44 4 %)

 
 	

 
 "
 5/
 

"5S 5T 55s 5S 5T 5Bx} B BQT BSs St S	
 	
T*=M 	
RV 	
rU   r   dictr   c                 8    | d   | d   | d   | d   | d   | d   dS )N	userAgentviewportdeviceScaleFactorisMobilehasTouchdefaultBrowserType)
user_agentra   device_scale_factor	is_mobile	has_touchdefault_browser_type )r^   s    r    r   r   U   s>    ;'$#$78*%*% $%9 : rU   )r5   typingr   r   r   r    playwright._impl._api_structuresr   playwright._impl._connectionr   r	   playwright._impl._helperr
   r   r   r   rk   rU   r    <module>rp      s9     - - 9 A F;
 ;
|$ 4 rU   