U
    mufÞ	  ã                   @   s*   d dl Z edƒZedƒZG dd„ dƒZdS )é    N).Zazimuthzbackground-colorzborder-bottom-colorzborder-collapsezborder-colorzborder-left-colorzborder-right-colorzborder-top-colorÚclearÚcolorÚcursorÚ	directionZdisplayZ	elevationÚfloatÚfontzfont-familyz	font-sizez
font-stylezfont-variantzfont-weightÚheightzletter-spacingzline-heightZoverflowÚpausezpause-afterzpause-beforeZpitchzpitch-rangeZrichnessZspeakzspeak-headerzspeak-numeralzspeak-punctuationzspeech-rateZstressz
text-alignztext-decorationztext-indentzunicode-bidizvertical-alignzvoice-familyÚvolumezwhite-spaceÚwidth)Úfillzfill-opacityz	fill-ruleZstrokezstroke-widthzstroke-linecapzstroke-linejoinzstroke-opacityc                   @   s"   e Zd Zeefdd„Zdd„ ZdS )ÚCSSSanitizerc                 C   s   || _ || _d S )N)Úallowed_css_propertiesÚallowed_svg_properties)Úselfr   r   © r   ú8/tmp/pip-unpacked-wheel-0vx3v32x/bleach/css_sanitizer.pyÚ__init__G   s    zCSSSanitizer.__init__c                 C   sŒ   t  |¡}|sdS g }|D ]Z}|jdkrL|j| jks@|j| jkrt| |¡ q|jdkr|r|d j|jkr| |¡ q|s~dS t  |¡ ¡ S )zSanitizes css in style tagsÚ Zdeclaration)ÚcommentÚ
whitespaceéÿÿÿÿ)	Útinycss2Zparse_declaration_listÚtypeZ
lower_namer   r   ÚappendÚ	serializeÚstrip)r   ÚstyleÚparsedZ
new_tokensÚtokenr   r   r   Úsanitize_cssO   s"    


ÿ
þ
zCSSSanitizer.sanitize_cssN)Ú__name__Ú
__module__Ú__qualname__ÚALLOWED_CSS_PROPERTIESÚALLOWED_SVG_PROPERTIESr   r    r   r   r   r   r   F   s   ý
r   )r   Ú	frozensetr$   r%   r   r   r   r   r   Ú<module>   s   ÿ4ÿ