Ë
    ©2Úi!  ã                   óÌ   — d Z ddlmZmZ ddl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mZ d	d
lmZ d	dlmZmZmZmZ h d£Z e
d	d	d«      Z e
d	d	d«       e	d	d	d«      fZdd„Zy)z/Validate properties, expanders and descriptors.é    )ÚSelectorErrorÚcompile_selector_list)Úparse_blocks_contentsÚ	serialize)ÚFunctionBlockÚ
IdentTokenÚLiteralTokenÚWhitespaceTokené   )ÚLOGGERé   )ÚInvalidValuesÚremove_whitespaceé   )Ú	EXPANDERS)ÚPREFIXÚPROPRIETARYÚUNSTABLEÚvalidate_non_shorthand>[   ú	cue-afterú
cue-beforeúcaret-colorúcaret-shapeúpause-afterúpitch-rangeúplay-duringúspeech-rateúwill-changeúfield-sizingúpause-beforeúspeak-headerútouch-actionúvoice-familyúscroll-marginúspeak-numeralúview-timelineúanimation-nameúpointer-eventsúscroll-paddingútimeline-scopeúanimation-delayúanimation-rangeúscroll-behaviorúscroll-timelineúscrollbar-colorúscrollbar-widthúscroll-snap-stopúscroll-snap-typeúscrollbar-gutterútransition-delayúscroll-margin-topúscroll-snap-alignúspeak-punctuationúanimation-durationúanimation-timelineúscroll-margin-leftúscroll-padding-topúview-timeline-axisúview-timeline-nameúanimation-directionúanimation-fill-modeúanimation-range-endúoverscroll-behaviorúscroll-margin-blockúscroll-margin-rightúscroll-padding-leftútransition-durationútransition-propertyúview-timeline-insetúanimation-play-stateúscroll-margin-bottomúscroll-margin-inlineúscroll-padding-blockúscroll-padding-rightúscroll-timeline-axisúscroll-timeline-nameúview-transition-nameúanimation-compositionúanimation-range-startúoverscroll-behavior-xúoverscroll-behavior-yúscroll-padding-bottomúscroll-padding-inlineúscroll-margin-block-endúscroll-margin-inline-endúscroll-padding-block-endúanimation-iteration-countúanimation-timing-functionúoverscroll-behavior-blockúscroll-margin-block-startúscroll-padding-inline-endúoverscroll-behavior-inlineúscroll-margin-inline-startúscroll-padding-block-startútransition-timing-functionúscroll-padding-inline-startÚcueÚcaretÚpauseÚpitchÚspeakÚcursorÚresizeÚstressÚvolumeÚazimuthÚrichnessÚ	animationÚ	elevationÚ
transitionú&ú:ÚrootNc           
   #   óŽ  ‡K  — |�O	 t         |v r;|g }}|D ]2  }|t         k(  r|j                  t        «       Œ"|j                  |«       Œ4 t	        |«      }t        ddd«      t        ddd|«      f}|D �]\  Š‰j                  dk(  r6t        j                  d‰j                  ‰j                  ‰j                  «       ‰j                  dk(  �r|€Œ\g }g g}‰j                  D ]-  }|d	k(  r|j                  g «       Œ|d
   j                  |«       Œ/ |D ]¡  }	t         |	v r>‰j                  D ].  }|t         k(  r|j                  |«       Œ|j                  |«       Œ0 n=t        ddd«      t        ddd|«      f}|j                  g |¢t!        ddd«      ‘|	¢«       |j                  t        ddd	«      «       Œ£ t#        | t%        ‰j&                  «      |dd
 «      E d{  –—†  ‰j                  dk7  r�Œ‰j(                  }
|
j+                  d«      s‰j,                  }
ˆfd„}|
t.        v r |dd«       �ŒÀ|
j+                  t0        «      rÀ|
t3        t0        «      d }|t4        v r|}
n£|t6        v rNt        j                  d‰j(                  t        ‰j8                  «      ‰j                  ‰j                  |«       |}
nMt        j                  d‰j(                  t        ‰j8                  «      ‰j                  ‰j                  |«       �Œ•|
j+                  d«      r|
j+                  d«      s |dd«       �ŒÂt;        j<                  |
t>        «      }tA        ‰j8                  «      }	 |stC        d«      ‚tE         |||
| «      «      }‰jH                  }|D ]:  \  }}|�|jK                  dd«      ||fŠ‰f–— Œ$|jK                  dd«      ||f–— Œ< �Œ_ y# t
        $ r t        dt        |«      › d�«      ‚w xY w7 �Œ# tB        $ r>} |d|jF                  r|jF                  d   r|jF                  d   nd«       Y d}~�ŒËd}~ww xY w­w)z½Expand shorthand properties, filter unsupported properties and values.

    Log a warning for every ignored declaration.

    Return a iterable of ``(name, value, important)`` tuples.

    Nú'r   rr   ÚisÚerrorzError: %s at %d:%d.zqualified-ruleú,éÿÿÿÿú Údeclarationz--c                 óž   •—  t        t        | «      d‰j                  t        ‰j                  «      ‰j
                  ‰j                  |«       y )NzIgnored `%s:%s` at %d:%d, %s.)Úgetattrr   Únamer   ÚvalueÚsource_lineÚsource_column)ÚlevelÚreasonr{   s     €úY/var/www/html/acx/venv/lib/python3.12/site-packages/weasyprint/css/validation/__init__.pyÚvalidation_errorz1preprocess_declarations.<locals>.validation_error»   sA   ø€ Ø"ŒG”F˜EÓ"Ø/Ø× Ñ ¤)¨K×,=Ñ,=Ó">Ø×'Ñ'¨×)BÑ)BÀFõLó    Údebugz/the property does not apply for the print mediaz\Deprecated `%s:%s` at %d:%d, prefixes on unstable attributes are deprecated, use %r instead.zTIgnored `%s:%s` at %d:%d, prefix on this attribute is not supported, use %r instead.ú-zprefixed selectors are ignoredzno valueÚwarningr   zinvalid valueÚ_)&ÚNESTING_SELECTORÚextendÚ
ROOT_TOKENÚappendr   r   r   r	   r   Útyper   r‰   Úmessager€   r�   Úpreluder
   Úpreprocess_declarationsr   Úcontentr~   Ú
startswithÚ
lower_nameÚNOT_PRINT_MEDIAr   Úlenr   r   r   r   Úgetr   r   r   ÚlistÚargsÚ	importantÚreplace)Úbase_urlÚdeclarationsr‘   Úoriginal_preludeÚtokenÚ	selectorsÚis_tokenÚdeclaration_preludeÚtoken_groupsÚtoken_groupr~   r…   Úunprefixed_nameÚ	validatorÚtokensÚresultÚexcr›   Ú	long_namer   r{   s                       @r„   r’   r’   r   s}  øè ø€ ð Ðð	;Ü 7Ñ*ð -4°R 'Ð Ø-ò .�EØÔ 0Ò0ØŸ™¤zÕ2àŸ™ uÕ-ð	.ô
 .¨gÓ6ˆIô
 ˜A˜q #Ó&¬°a¸¸DÀ'Ó(JÐJ€HØ#ó iDˆØ×Ñ˜wÒ&Ü�N‰NØ%Ø×#Ñ#Ø×'Ñ'¨×)BÑ)BôDð
 ×ÑÐ/Ó/àˆØØ"$ÐØ˜4ˆLØ$×,Ñ,ò 3�Ø˜C’<Ø ×'Ñ'¨Õ+à  Ñ$×+Ñ+¨EÕ2ð	3ð
  ,ò D�Ü# {Ñ2à!,×!4Ñ!4ò >˜Ø Ô$4Ò4Ø/×6Ñ6°xÕ@à/×6Ñ6°uÕ=ñ	>ô % Q¨¨3Ó/Ü% a¨¨D°'Ó:ð <�Hð (×.Ñ.ð 0&Ø!ð0&Ü#2°1°a¸Ó#=ð0&à$ð0&ô 'ð $×*Ñ*¬<¸¸1¸cÓ+BÕCð!Dô" /ØÔ/°×0CÑ0CÓDØ# C RÐ(ó*÷ *ð *ð ×Ñ˜}Ò,Ùà×ÑˆØ�‰˜tÔ$Ø×)Ñ)ˆDô	Lð ”?Ñ"ÙØÐJôLáà�?‰?œ6Ô"Ø"¤3¤v£; <Ð0ˆOØ¤+Ñ-Ø&‘Ø ¤HÑ,Ü—‘ð&ð  ×$Ñ$¤i°×0AÑ0AÓ&BØ×+Ñ+¨[×-FÑ-FØ#ô%ð '‘ä—‘ð&ð  ×$Ñ$¤i°×0AÑ0AÓ&BØ×+Ñ+¨[×-FÑ-FØ#ô%ñ à�?‰?˜3Ô¨¯©¸Ô(=Ù˜WÐ&FÔGÙä—M‘M $Ô(>Ó?ˆ	Ü" ;×#4Ñ#4Ó5ˆð	ñ Ü# JÓ/Ð/ä™) F¨D°(Ó;Ó<ˆFð  ×)Ñ)ˆ	Ø &ò 	DÑˆI�uØÐ"Ø(×0Ñ0°°cÓ:¸EÀ9ÐM�Ø Ð,Ó,à×'Ñ'¨¨SÓ1°5¸)ÐCÓCò	DñIiDøô ò 	;Ü !¤I¨gÓ$6Ð#7°qÐ 9Ó:Ð:ð	;úðP*úôt ò 	ÙØØ"Ÿxšx¨C¯H©H°QªK�—‘˜’¸_ôNõ ûð		üsV   ƒQ‡AO ÁFQÇO8ÇFQÍ$ O;ÎAQÏ"O5Ï5QÏ;	QÐ3P=Ð7QÐ=QÑQ)N)Ú__doc__Ú
cssselect2r   r   Útinycss2r   r   Útinycss2.astr   r   r	   r
   Ú r   r¨   r   r   Ú	expandersr   Ú
propertiesr   r   r   r   r–   r‹   r�   r’   © r†   r„   ú<module>r´      s`   ðÙ 5ç ;ß 5ß QÓ Qå ß 5Ý  ß MÓ Mò`€ñB    1 cÓ*Ð Ù˜!˜Q Ó$¡j°°A°vÓ&>Ð>€
ôDDr†   