403Webshell
Server IP : 35.80.110.71  /  Your IP : 216.73.216.52
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64
User : ubuntu ( 1000)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/lib/python3/dist-packages/css_parser/css/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3/dist-packages/css_parser/css/__pycache__/csspagerule.cpython-312.pyc
�

��3eg?����ddlmZmZmZmZddlZddlZddlm	Z	ddl
mZddlm
Z
ddlmZ	dgZd	Zd
ZddlZej(ddk\reZneZd�ZGd
�de	j2�Zy)�)�unicode_literals�division�absolute_import�print_functionN�)�cssrule)�
MarginRule)�CSSStyleDeclaration)�chain�CSSPageRule�restructuredtextz$Id$�c�<�t|t�r|St|�S�N)�
isinstance�list)�ps �</usr/lib/python3/dist-packages/css_parser/css/csspagerule.py�as_listrs���!�T������7�N�c�
��eZdZdZ		d�fd�	Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Z�fd
�Zeeed��Zd�Zd�Zeeed��Zd�Zed�ed��Zdd�Zed�d��Zed�d��Zed��Z�xZS)ra�
    The CSSPageRule interface represents a @page rule within a CSS style
    sheet. The @page rule is used to specify the dimensions, orientation,
    margins, etc. of a page box for paged media.

    Format::

        page :
               PAGE_SYM S* IDENT? pseudo_page? S*
               '{' S* [ declaration | margin ]? [ ';' S* [ declaration | margin ]? ]* '}' S*
               ;

        pseudo_page :
               ':' [ "left" | "right" | "first" ]
               ;

        margin :
               margin_sym S* '{' declaration [ ';' S* declaration? ]* '}' S*
               ;

        margin_sym :
               TOPLEFTCORNER_SYM |
               TOPLEFT_SYM |
               TOPCENTER_SYM |
               TOPRIGHT_SYM |
               TOPRIGHTCORNER_SYM |
               BOTTOMLEFTCORNER_SYM |
               BOTTOMLEFT_SYM |
               BOTTOMCENTER_SYM |
               BOTTOMRIGHT_SYM |
               BOTTOMRIGHTCORNER_SYM |
               LEFTTOP_SYM |
               LEFTMIDDLE_SYM |
               LEFTBOTTOM_SYM |
               RIGHTTOP_SYM |
               RIGHTMIDDLE_SYM |
               RIGHTBOTTOM_SYM
               ;

    `cssRules` contains a list of `MarginRule` objects.
    c�|��tt|�||��d|_d|_|j�}|r$||_|j|jd�n|j�|_|r||_	nt�|_	|j|jd�|j|�||_y)z�
        If readonly allows setting of properties in constructor only.

        :param selectorText:
            type string
        :param style:
            CSSStyleDeclaration for this CSSStyleRule
        ��
parentRule�parentStyleSheetz@page)rrr�selectorText�styleN)
�superr�__init__�
_atkeyword�_specificity�_tempSeqr�append�
_selectorTextrr
�_setSeq�	_readonly)�selfrrrr�readonly�tempseq�	__class__s       �rrzCSSPageRule.__init__Fs����	�k�4�)�Z�;K�	*�	M�!���%����-�-�/��� ,�D���N�N�4�,�,�n�=�!%����D����D�J�,�.�D�J����t�z�z�7�+����W��!��rc�~�d|jj�d|j�d|jj�d�S)Nzcss_parser.css.z(selectorText=z, style=�))r*�__name__rr�cssText�r's r�__repr__zCSSPageRule.__repr__gs/���N�N�#�#�����J�J��� �	 rc	���d|jj|j|j|jj
t
|j�t|�fzS)NzV<css_parser.css.%s object selectorText=%r specificity=%r style=%r cssRules=%r at 0x%x>)	r*r-r�specificityrr.�len�cssRules�idr/s r�__str__zCSSPageRule.__str__msU��0��N�N�#�#��������J�J�����
�
���t�H�
4��	rc�8�|t|j��vS)z#Check if margin is set in the rule.)r�keys)r'�margins  r�__contains__zCSSPageRule.__contains__ws��������-�-�-rc�:�td�|jD��S)z,Return list of all set margins (MarginRule).c3�4K�|]}|j���y�wr)r9)�.0�rs  r�	<genexpr>z#CSSPageRule.keys.<locals>.<genexpr>}s����7�A�q�x�x�7�s�)rr4r/s rr8zCSSPageRule.keys{s���7����7�7�7rc�`�|jD]}|j|k(s�|jcSy)z\Retrieve the style (of MarginRule)
        for `margin` (which must be normalized).
        N)r4r9r�r'r9r>s   r�__getitem__zCSSPageRule.__getitem__s,�����	�A��x�x�6�!��w�w��	rc��t|j�D]\}}|j|k(s�||_|cS|j	t||��S)zWSet the style (of MarginRule)
        for `margin` (which must be normalized).
        )�	enumerater4r9r�addr	)r'r9r�ir>s     r�__setitem__zCSSPageRule.__setitem__�sP���d�m�m�,�	7�D�A�q��x�x�6�!������	7�
�8�8�J�v�u�5�6�6rc�h�|jD]#}|j|k(s�|j|��%y)z[Delete the style (the MarginRule)
        for `margin` (which must be normalized).
        N)r4r9�
deleteRulerAs   r�__delitem__zCSSPageRule.__delitem__�s/�����	#�A��x�x�6�!�����"�	#rc
�X��	�dddddd��	d�	�fd�	}d�	fd�	}d�	�fd�	}dd�}�j�}�jd	|�j|�||||d
��	��\}}|xr�	d}|d
k(r-�jj	d�j|�z�||�	d�	d�	dffS)z�
        Parse `selectorText` which may also be a list of tokens
        and returns (selectorText, seq).

        see _setSelectorText for details
        TFr)�
wellformed�last-S�name�first�lrc�P���	j|�}�ds�|dvr�d|k(r�	t|�}�	j|��	j|�}}�	jj|k7r!�	j
j
d|z|�|S|dvr#�	j
jdd|z��d��|d	k(rd
�d	<nd
�d<|j||zd�y
d�d<�	j
j
d|z|�|S#t$r �	j
j
d|�Y|SwxYw)NrM)�page�: or EOF�:z6CSSPageRule selectorText: Expected IDENT but found: %r)rO�left�rightz%CSSPageRule: Unknown @page selector: T)�
neverraiserOrrP�pseudo�EOFz)CSSPageRule selectorText: No IDENT found.FrLz-CSSPageRule selectorText: Unexpected CHAR: %r)
�_tokenvalue�next�_type�_prods�IDENT�_log�error�warnr#�
StopIteration)
�expected�seq�token�	tokenizer�val�
identtoken�ival�ityp�newr's
        ��r�_charz.CSSPageRule.__parseSelectorText.<locals>._char�sP����"�"�5�)�C��x�=�X�1E�%E��#�:�%�!%�i��J�
"&�!1�!1�*�!=�t�z�z�*�?U�$�D��{�{�(�(�D�0��	�	���)>�@D�)E�FK�M� �� �'A�A� �I�I�N�N�.1�$�h�,9�EI�+�K� �7�?�+,�C��L�()�C��I��
�
�3��:�x�8�$�%*��L�!��	�	��� O�"%�!&�',�.����1%�L��I�I�O�O�C�U�L�$ ��'L�s�C<�<%D%�$D%c���|dk(rd�d<|S)�Does not raise if EOF is found.rSTrM�)rcrdrerfrks    �r�Sz*CSSPageRule.__parseSelectorText.<locals>.S�s����:�%� $��H�
��Orc����j|�}d|k(rI�j|�dk(r�jjd|�yd�d<|j	|d�yd�d	<�jjd
|z|�|S)�rR�autoz+CSSPageRule selectorText: Invalid pagename.rrNr^rSFrLz.CSSPageRule selectorText: Unexpected IDENT: %r)rZ�
_normalizer_r`r#)rcrdrerfrgrkr's     ��rr^z.CSSPageRule.__parseSelectorText.<locals>.IDENT�s�����"�"�5�)�C���!��?�?�3�'�6�1��I�I�O�O�$Q�$)�+�"�#$�C��K��J�J�s�G�,�!�$)��L�!��	�	���!%�'*�!+�,1�3��rc�f�|jtjj|g�d�|S)rn�COMMENT)r#�
css_parser�css�
CSSComment)rcrdrerfs    rrvz0CSSPageRule.__parseSelectorText.<locals>.COMMENT�s&���J�J�z�~�~�0�0�%��9�9�E��OrrR)�CHARr^rvrp)rcrdrf�productionsrkrL�identz/CSSPageRule selectorText: No valid selector: %rrNrOrPr)r"�_parse�
_tokenize2r_r`�	_valuestr)
r'rrlrpr^rv�newseqrLrcrks
`        @r�__parseSelectorTextzCSSPageRule.__parseSelectorText�s����"�U��1�A�/��	 �B	�	 �$	�
�����#�{�{�F�/5����Q]�A^�@E�AF�CJ�=>�8@�03�
 +� 4��
�H� �5�C��$5�
��w���I�I�O�O�A����|�,�-�
.��6�C��K��W��s�4�y�#I�I�Irc���t|�}g}g}|D]�}|ddk(r�|j|d�tjvr�t||j��}t|g|�|_|D]K}|j|jk(s�|jD]}|jj|d���!n|j|���|j|���||fS)z$tokens is a list, no generator (yet)r�	ATKEYWORDrrF)�replace)�iterrtr	�marginsrrr.r9r�setPropertyr#)	r'�tokens�g�styletokensr4re�mr>rs	         r�__parseMarginAndStylez!CSSPageRule.__parseMarginAndStyle�s�����L�������	&�E��Q�x�;�&����u�Q�x�(�J�,>�,>�>��$�04�0E�0E�G��!�5�'�1�-��	�"�'�A��x�x�1�8�8�+�!"���B�A��G�G�/�/��5�/�A�B��	'��O�O�A�&��
���u�%�+	&�.��$�$rc�@�tjj|�S)z#Return serialized property cssText.)rw�ser�do_CSSPageRuler/s r�_getCssTextzCSSPageRule._getCssTexts���~�~�,�,�T�2�2rc���tt|�|�|j|�}|j	|j|��|jjk7rH|jjd|j|�ztjj��yt|��}d}|j|dd��\}}|j|dd��\}}|j|�}	|j!|�dk7r1d}|jjd	|j|�z|�n!|	rd}|jjd
|	��|j#|�\}
}}|xr|
}|j!|�|j	|�}}
|
dk7r5|d
k7r0d}|jjd|j|�z�n1d
|k(r|j%|�|j'|�\}}||_|r[||_||_||_t0j2j5�|_D]}|j6j%|��yy)ad
        :exceptions:
            - :exc:`~xml.dom.SyntaxErr`:
              Raised if the specified CSS string value has a syntax error and
              is unparsable.
            - :exc:`~xml.dom.InvalidModificationErr`:
              Raised if the specified CSS string value represents a different
              type of rule than the current one.
            - :exc:`~xml.dom.HierarchyRequestErr`:
              Raised if the rule cannot be inserted at this point in the
              style sheet.
            - :exc:`~xml.dom.NoModificationAllowedErr`:
              Raised if the rule is readonly.
        z%CSSPageRule: No CSSPageRule found: %s�r`)rT)�blockstartonly�separateEnd)�blockendonlyr��{Fz6CSSPageRule: No start { of style declaration found: %rz$CSSPageRule: Trailing content found.)re�}rYz5CSSPageRule: No "}" after style declaration found: %rN)rr�_setCssTextr~r\�
_nexttokenr]�PAGE_SYMr_r`r�xml�dom�InvalidModificationErrr
�_tokensupto2rZ�_CSSPageRule__parseSelectorTextr#�!_CSSPageRule__parseMarginAndStyler.r$r!rrwrx�CSSRuleListr4)r'r.rf�newStyle�ok�selectortokens�
startbracer��braceorEOFtoken�	nonetoken�selok�	newselseqr2rg�type_r4r>r*s                 �rr�zCSSPageRule._setCssTextsN���	�k�4�,�W�5��O�O�G�,�	��:�:�d�o�o�i�0�1�T�[�[�5I�5I�I��I�I�O�O�C� �N�N�7�3�4�"%�'�'�"@�"@�
�
B�+�d�;�H��B�)-�):�):�9�JN�GK�*;�*M�&�N�J�,0�+<�+<�Y�JN�IM�,=�,O�(�K�����	�2�I����
�+�s�2����	�	���!,� $���w� 7�!8�9C�E�����	�	��� F�&/� �1�-1�,D�,D�^�,T�)�E�9�k����B��)�)�/�:�D�J�J��<W��C��c�z�e�u�n����	�	���K��N�N�7�+�,�-��E�>��&�&��7�)-�(B�(B�;�(O�%��+�$/�� ��%.��"�$/��!�%��
� *��� :� :� <��
�!�,�A��M�M�(�(��+�,�rz7(DOM) The parsable textual representation of this rule.)�docc�T�tjj|j�S)z'Wrapper for css_parser Selector object.)rwr��do_CSSPageRuleSelectorr$r/s r�_getSelectorTextzCSSPageRule._getSelectorTextfs���~�~�4�4�T�5G�5G�H�Hrc�p�|j�|j|�\}}}|r||_||_yy)a�Wrapper for css_parser Selector object.

        :param selectorText:
            DOM String, in CSS 2.1 one of

            - :first
            - :left
            - :right
            - empty

        :exceptions:
            - :exc:`~xml.dom.SyntaxErr`:
              Raised if the specified CSS string value has a syntax error
              and is unparsable.
            - :exc:`~xml.dom.NoModificationAllowedErr`:
              Raised if this rule is readonly.
        N)�_checkReadonlyr�r$r!)r'rrLr�r2s     r�_setSelectorTextzCSSPageRule._setSelectorTextjsA��$	
����+/�*B�*B�<�*P�'�
�F�K��!'�D�� +�D��rzL(DOM) The parsable textual representation of the page selector for the rule.c��|j�t|t�rt||��|_y||_||_y)zK
        :param style:
            a CSSStyleDeclaration or string
        )r.rN)r�r�string_typer
�_style�_parentRule)r'rs  r�	_setStylezCSSPageRule._setStyle�s7��
	
�����e�[�)�-�e��M�D�K� $�E���D�Krc��|jSr)r�r/s r�<lambda>zCSSPageRule.<lambda>�s
��$�+�+�rz](DOM) The declaration-block of this rule set, a :class:`~css_parser.css.CSSStyleDeclaration`.c��|j||�\}}|dus|duryt|tjj�s�t|tjj
�s|t|tjj�sXt|tjj�s4t|t�s$t|tjj�rY|jj|jj�d|j��tj j"��y|j%||�S)zImplements base ``insertRule``.FTNz): This type of rule is not allowed here: r�)�_prepareInsertRulerrwrx�CSSCharsetRule�CSSFontFaceRule�
CSSImportRule�CSSNamespaceRuler�CSSMediaRuler_r`r*r-r.r�r��HierarchyRequestErr�_finishInsertRule)r'�rule�indexs   r�
insertRulezCSSPageRule.insertRule�s����-�-�d�E�:���e��5�=�D�D�L���d�J�N�N�9�9�:��d�J�N�N�:�:�;��d�J�N�N�8�8�9��d�J�N�N�;�;�<��d�K�(��d�J�N�N�7�7�8��I�I�O�O�#�~�~�6�6����F�"%�'�'�"=�"=�
�
?�
��%�%�d�E�2�2rc��|jSr)r!r/s rr�zCSSPageRule.<lambda>�s���(9�(9�raSpecificity of this page rule (READONLY).
Tuple of (f, g, h) where:

 - if the page selector has a named page, f=1; else f=0
 - if the page selector has a ':first' pseudo-class, g=1; else g=0
 - if the page selector has a ':left' or ':right' pseudo-class, h=1; else h=0
c��|jSr)�	PAGE_RULEr/s rr�zCSSPageRule.<lambda>�s
�����rz=The type of this rule, as defined by a CSSRule type constant.c��y)NTror/s rr�zCSSPageRule.<lambda>�s�r)NNNNFr)r-�
__module__�__qualname__�__doc__rr0r6r:r8rBrGrJr�r�r�r��propertyr.r�r�rr�rr�r2�typerL�
__classcell__)r*s@rrrs����(�TBF�16�"�B ��.�8��	7�#�ZJ�x%�B3�F,�P�{�K�T�V�G�I�,�4�,�.>�!B�C�L� �
�-�y�K�
L�E�3�,�9� ��K��/�)�*�D�
�+�,�Jr)�
__future__rrrr�xml.domr�rwrrr�
marginruler	�cssstyledeclarationr
�	itertoolsr�__all__�
__docformat__�__version__�sys�version_info�strr��
basestringr�CSSRuleRulesrrorr�<module>r�sj��R�R����"�4��9��/��"�
���
����A��!���K��K��b-�'�&�&�b-r

Youez - 2016 - github.com/yon3zu
LinuXploit