
    Yhc	              	           S SK r S SKrS SKJrJr  S\S\4S jrS\S\4S jrS\S\4S jr SS\\\\   4   S	\	S
\	S\4S jjr
 SS\\\4   S	\	S\4S jjrg)    N)PatternUnionpatternreturnc                 H   SnU R                   S:w  a  SnU R                   [        [        R                  5      -  S:w  a  US-  nU R                   [        [        R                  5      -  S:w  a  US-  nU R                   [        [        R
                  5      -  S:w  a  US-  nU R                   [        [        R
                  5      [        [        R                  5      -  [        [        R                  5      -  [        [        R                  5      -  ) -  S:X  d   S5       eU$ )N r   ismzPUnexpected re.Pattern flag, only MULTILINE, IGNORECASE and DOTALL are supported.)flagsintre
IGNORECASEDOTALL	MULTILINEUNICODE)r   r   s     M/var/www/html/env/lib/python3.13/site-packages/playwright/_impl/_str_utils.pyescape_regex_flagsr      s    E}}BMM**q0BII&1,BLL))a/BMM 22S^Cc"**oU
V	W	Z Z	Z	 L    textc                 2    [         R                  " SSU 5      $ )Nz[.*+?^>${}()|[\]\\]z\$&)r   subr   s    r   escape_for_regexr   &   s    66(&$77r   c                     S[         R                  " SSU R                  5      R                  SS5      -   S-   [	        U 5      -   $ )N/z(^|[^\\])(\\\\)*(["\'`])z\1\2\\\3z>>z\>\>)r   r   r   replacer   r   s    r   escape_regex_for_selectorr   *   sO     	
&&,k4<<
H
P
P(
	
 		
 T
"	#r   exactcase_sensitivec                     [        U [        5      (       a  [        U 5      $ [        R                  " U 5      U(       a  S-   $ S-   $ )Nr
   r	   )
isinstancer   r   jsondumps)r   r   r    s      r   escape_for_text_selectorr%   6   s:     $  (..::des5555r   valuec                     [        U [        5      (       a  [        U 5      $ SU R                  SS5      R                  SS5      -   S-   U(       a  S-   $ S-   $ )N"\z\\z\"r
   r	   )r"   r   r   r   )r&   r   s     r   escape_for_attribute_selectorr*   >   si     %!!(// 	
--f
%
-
-c5
9	:
	 3	" !	"r   )NN)N)r#   r   typingr   r   strr   r   r   boolr%   r*    r   r   <module>r/      s     	 ! C $83 83 8	G 	 	 PT6
WS\!
"6+/6HL66 /3g'+r   