
    Oj'                         d dl Z d dlmZmZmZ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 d dlmZ d dlmZmZ  G d d	e      Zy)
    N)AnyDictLiteralOptionalPatternUnioncast)TracingGroupLocation)Artifact)ChannelOwnerfrom_channelfrom_nullable_channel)DisposableStub)Errorlocals_to_paramsc                   B    e Zd Zdededededdf
 fdZ	 	 	 	 	 	 	 	 d.ded	ed
ededededededdfdZd/d	ededdfdZ	deddfdZ
d0deej                  ef   ddfdZd0deej                  ef   ddfdZd0deej                  ef   ddfdZd1dZ	 d0dededefdZd1dZ	 	 	 d2deej                  ef   ded   ded    d!eeee   f   def
d"Z	 	 	 	 d3d#eej                  ef   d$ee   d%eeee   f   d&ed   d'ed    d(ee   defd)Zd1d*Zd1d+Zd,eddfd-Z xZS )4TracingparenttypeguidinitializerreturnNc                     t         |   ||||       d| _        d| _        d | _        d| _        d | _        d | _        i | _        y NF)	super__init___include_sources_is_live
_stacks_id_is_tracing_traces_dir_har_id_har_recorders)selfr   r   r   r   	__class__s        p/var/www/origus_pro_usr/data/www/origus.pro/core/.venv/lib/python3.12/site-packages/playwright/_impl/_tracing.pyr   zTracing.__init__   sM     	t[9&+#)-!&*.&*9;    nametitle	snapshotsariaSnapshotsscreenSnapshotsscreenshotssourceslivec	                 X  K   t        t                     }	t        |      | _        t        |      | _        | j
                  j                  dd ||||||d       d {    | j
                  j                  dd ||d       d {   }
| j                  |
       d {    y 7 F7  7 	w)NtracingStart)r(   snapshotDomsnapshotAriasnapshotScreen
screencastr/   tracingStartChunk)r)   r(   )r   localsboolr   r   _channelsend_start_collecting_stacks)r$   r(   r)   r*   r+   r,   r-   r.   r/   params
trace_names              r&   startzTracing.start*   s      "&(+ $WT
mm  ( -"1)
 	
 	
  ==--'E
 

 ++J777	

 	8s6   AB*B$'B*B&B*B(B*&B*(B*c                    K   t        t                     }| j                  j                  dd |       d {   }| j	                  |       d {    y 7 7 w)Nr6   )r   r7   r9   r:   r;   )r$   r)   r(   r<   r=   s        r&   start_chunkzTracing.start_chunkJ   sL     !&(+==--.A4PP
++J777 Q7s!   4AAAAAAr=   c                    K   | j                   s"d| _         | j                  j                  d       | j                  j                  j	                  | j
                  || j                         d {   | _        y 7 
w)NT)r    _connectionset_is_tracinglocal_utilstracing_startedr!   r   r   )r$   r=   s     r&   r;   z Tracing._start_collecting_stacksO   sd     #D++D1 $ 0 0 < < L Lj$--!
 
 
s   A-A</A:0A<pathc                 B   K   | j                  |       d {    y 7 wN)_do_stop_chunkr$   rF   s     r&   
stop_chunkzTracing.stop_chunkW   s     !!$'''s   c                    K   | j                  |       d {    | j                  j                  dd        d {    y 7 )7 w)NtracingStop)rI   r9   r:   rJ   s     r&   stopzTracing.stopZ   sG     !!$'''mm  
 	
 	
 	(	
s   AA#AAAA	file_pathc                   K   | j                          |sk| j                  j                  dd ddi       d {    | j                  r7| j                  j
                  j                  | j                         d {    y | j                  j                   }|r{| j                  j                  dd ddi       d {   }| j                  j
                  j                  t        |      |d   | j                  d| j                  d       d {    y | j                  j                  dd ddi       d {   }t        t        t           t        |j!                  d                  }|sD| j                  r7| j                  j
                  j                  | j                         d {    y |j#                  |       d {    |j%                          d {    | j                  j
                  j                  t        |      g | j                  d	| j                  d       d {    y 7 7 7 }7 -7 7 7 ~7 h7 w)
NtracingStopChunkmodediscardentrieswrite)zipFilerT   stacksIdrR   includeSourcesarchiveartifactappend)_reset_stack_counterr9   r:   r   rB   rD   trace_discarded	is_remotesend_return_as_dictzipstrr   r	   r   r   r   getsave_asdelete)r$   rO   is_localresultrZ   s        r&   rI   zTracing._do_stop_chunka   s    !!#--$$%7	?RSSS&&22BB4??SSS''111==<<"D69*= F ""..22"9~%i0 $#&*&;&;   }}88	
 
 X!&**Z"89
 &&22BB4??SSS y)))oo**..y> OO "&"7"7
 	
 	
[ TS
  T 	*	
s   5I	H2AI	:H5;A I	;H8<AI	H;'I	6H>7A3I	*I+I	II	IAI	,I-I	5I	8I	;I	>I	I	I	I	I	c                 b    | j                   r#d| _         | j                  j                  d       y y r   )r    rB   rC   r$   s    r&   r\   zTracing._reset_stack_counter   s,    $D++E2 r'   locationc                     K    j                   j                  dd t        t                            d {    t	         fd       S 7 w)NtracingGroupc                  $     j                         S rH   )	group_endrh   s   r&   <lambda>zTracing.group.<locals>.<lambda>   s    dnn&6 r'   )r9   r:   r   r7   r   )r$   r(   ri   s   `  r&   groupzTracing.group   sA      mm  7G7QRRR6== 	Ss   2AA	Ac                 X   K   | j                   j                  dd        d {    y 7 w)NtracingGroupEnd)r9   r:   rh   s    r&   rm   zTracing.group_end   s(     mm  
 	
 	
s    *(*content)attachembedomitrR   )fullminimal	urlFilterc                     K    j                   rt        d      t        |      j                  d      }|rdnd} j	                  |d ||xs ||xs d       d {    _         t         fd       S 7 w)Nz&HAR recording has already been started.ziprs   rt   rv   )harpageurlupdate_contentupdate_modec                  $     j                         S rH   )stop_harrh   s   r&   rn   z#Tracing.start_har.<locals>.<lambda>   s    dmmo r'   )r"   r   ra   endswith_record_into_harr   )r$   rF   rr   rR   rx   is_zipdefault_contents   `      r&   	start_harzTracing.start_har   s      <<@AAT##F+HG 	 "22"5o 3 
 
 5t<<
s   AA7A5A7r{   r|   r}   r~   r   resourcesDirc                   K   t        |      j                  d      }d }d }	d }
t        t               r}n(&j                  }	dj	                  fddD              }
|xs d|xs d|rd n
t        |      d}|||d<   |	|	|d	<   |
|
|d
<   |||d<   d|i}||j
                  |d<   | j
                  j                  dd |       d {   }|d   }dt        |      i| j                  |<   |S 7 %w)Nrz    c              3   F   K   | ]  \  }}j                   |z  r|  y wrH   )flags).0flagmaskr}   s      r&   	<genexpr>z+Tracing._record_into_har.<locals>.<genexpr>   s)      &D$99t# &s   !))i   )m   )s   rs   rw   )rr   rR   harPathurlGloburlRegexSourceurlRegexFlagsr   optionsr|   harStartharIdrF   )ra   r   
isinstancepatternjoinr9   r_   r#   )r$   r{   r|   r}   r~   r   r   r   url_globurl_regex_sourceurl_regex_flagsr   r<   rf   har_ids      `           r&   r   zTracing._record_into_har   s2     S""6*"&*.)-c3H_"{{ gg &"A& O &1,9%t3s8&

 !)GI'(8G$%&'6GO$#&2GN#"+W!5!]]F6N}}88T6RR'-s3x&8F# Ss   CC3C1&C3c                    K   t        | j                  j                               D ]  }| j                  |       d {     d | _        y 7 wrH   )listr#   keys_export_harr"   r$   r   s     r&   _export_all_harszTracing._export_all_hars   sI     4..3356 	+F""6***	+ +s   ;AAAc                 n   K   | j                   }|sy d | _         | j                  |       d {    y 7 wrH   )r"   r   r   s     r&   r   zTracing.stop_har   s0     v&&&s   +535r   c                   K   | j                   j                  |d       }|sy | j                  j                   }|d   j	                  d      }|rd| j
                  j                  dd |dd       d {   }|sy | j                  j                  j                  |d   |d   ddd       d {    y | j
                  j                  dd |d	d       d {   }t        t        t        |d
               }|r5|j                  |d          d {    |j                          d {    y |j                  |d   dz          d {    |j                          d {    y 7 7 7 7 [7 E7 '7 w)NrF   rz   	harExportrT   )r   rR   rU   F)rV   rT   rR   rX   rY   rZ   z.tmp)r#   poprB   r^   r   r9   r_   rD   r`   r	   r   r   rc   rd   )r$   r   r<   re   r   rf   rZ   s          r&   r   zTracing._export_har   s|    $$((6''111((0==<<TVY#G F ""..22%f~%i0#&+	   }}88C
 
 ,vj/A"BC""6&>222//###vf~6777oo5

 3# 	8s~   A0E42E&3:E4-E(.(E4E*9E4E,E4(E.)E4E0	E4 E2!E4(E4*E4,E4.E40E42E4)NNNNNNNN)NNrH   )r   N)NNN)NNNN)__name__
__module____qualname__r   ra   r   r   r8   r>   r@   r;   r   pathlibPathrK   rN   rI   r\   r
   r   ro   rm   r   r   r   r   r   r   r   r   __classcell__)r%   s   @r&   r   r      st   
<"
<*-
<58
<GK
<	
< " $ 88 8 	8
 8 8 8 8 8 
8@8s 8 8 8

 
 
(U7<<+<%= ( (
uW\\3%67 
4 
:
eGLL#4E.F :
RV :
x3 ;?>>#7>	>
 7;+/.2=GLL#%&= 23= '(	=
 gcl*+= 
=4 )-=A26&*)7<<$%) |$) 3$%	)
   9:) ./) sm) 
)V
'"  "  " r'   r   )r   typingr   r   r   r   r   r   r	    playwright._impl._api_structuresr
   playwright._impl._artifactr   playwright._impl._connectionr   r   r   playwright._impl._disposabler   playwright._impl._helperr   r   r    r'   r&   <module>r      s9     E E E A / 
 8 <@ l @ r'   