o
    Ñ­jïU  ã                   @   sD  d Z ddlZddlmZmZmZmZmZmZm	Z	m
Z
 ddlmZmZmZmZmZmZmZmZ ddl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  g d
¢Z!G dd„ deƒZ"G dd„ deƒZ#G dd„ deƒZ$G dd„ de$ƒZ%G dd„ deƒZ&G dd„ deƒZ'G dd„ deƒZ(e(Z)G dd„ deƒZ*G dd„ de"ƒZ+dS )zØ
    pygments.lexers.html
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for HTML, XML and related markup.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚExtendedRegexLexerÚincludeÚbygroupsÚdefaultÚusingÚinheritÚthis)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚPunctuationÚ
Whitespace)Úlooks_like_xmlÚhtml_doctype_matches)ÚJavascriptLexer)Ú
ScalaLexer)ÚCssLexerÚ_indentationÚ_starts_block)Ú	RubyLexer)	Ú	HtmlLexerÚDtdLexerÚXmlLexerÚ	XsltLexerÚ	HamlLexerÚ
ScamlLexerÚPugLexerÚVueLexerÚUrlEncodedLexerc                   @   s–  e Zd ZdZdZdZdgZg d¢ZddgZdZ	e
je
jB Zd	efd
ejfdejfdejfdejfdejfdeeeejeƒdfdeeeejeƒdfdeeeejƒdfdeeeeeejeeƒfg
defdeejeeƒdfdejfdeeeeƒdfgdeeeeeejeeƒdfdeeƒfdeeƒdfdeeƒdfgd eeeeeejeeƒdfd!eeƒfdeeƒdfdeeƒdfgd"edfd#edfd$edfgd%œZd&d'„ Zd(S ))r   zo
    For HTML 4 and XHTML 1 markup. Nested JavaScript and CSS is highlighted
    by the appropriate lexer.
    ÚHTMLzhttps://html.spec.whatwg.org/Úhtml)z*.htmlz*.htmz*.xhtmlú*.xsltz	text/htmlzapplication/xhtml+xmlÚ z[^<&]+ú&\S*?;ú\<\!\[CDATA\[.*?\]\]\>ú
<!--.*?-->ú	<\?.*?\?>ú<![^>]*>z(<)(\s*)(script)(\s*))úscript-contentÚtagz(<)(\s*)(style)(\s*))ústyle-contentr-   z(<)(\s*)([\w:.-]+)r-   z"(<)(\s*)(/)(\s*)([\w:.-]+)(\s*)(>)ú\s+ú([\w:-]+\s*)(=)(\s*)Úattrú[\w:-]+ú(/?)(\s*)(>)ú#popz (<)(\s*)(/)(\s*)(script)(\s*)(>)z.+?(?=<\s*/\s*script\s*>)z.+?\nz.+z(<)(\s*)(/)(\s*)(style)(\s*)(>)z.+?(?=<\s*/\s*style\s*>)ú".*?"ú'.*?'ú[^\s>]+)Úrootr-   r,   r.   r1   c                 C   ó   t | ƒrdS d S )Ng      à?)r   ©Útext© r<   úQ/var/www/html/CropPilot/venv/lib/python3.10/site-packages/pygments/lexers/html.pyÚanalyse_textf   ó   ÿzHtmlLexer.analyse_textN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedÚreÚ
IGNORECASEÚDOTALLÚflagsr
   r   ÚEntityr   ÚPreprocÚ	Multiliner   r   ÚTagÚ	Attributer   r   r   r   r   Útokensr>   r<   r<   r<   r=   r      s‚    þþÿÿÿïÿûÿþ
öÿþ
öýË<r   c                   @   sœ  e Zd ZdZejejB ZdZdgZ	dgZ
dgZdZdZedƒd	eeeejƒd
fdeeeejƒdfdeeeejƒdfdeeeejƒdfdeeejeeƒfdeeeejƒfdejfdefg	defdejfdedfdefdejfdejfgdefdedfdefgedƒd ejfd!ejfd"edfgedƒd#ejfd$ejfd%ejfd!ejfd"edfgedƒd&ejfd!ejfd"edfgedƒd'ejfd!ejfd"edfgd(œZd)d*„ Zd+S ),r   z7
    A lexer for DTDs (Document Type Definitions).
    ÚDTDÚdtdz*.dtdzapplication/xml-dtdz6https://en.wikipedia.org/wiki/Document_type_definitionz1.5Úcommonz(<!ELEMENT)(\s+)(\S+)Úelementz(<!ATTLIST)(\s+)(\S+)Úattlistz(<!ENTITY)(\s+)(\S+)Úentityz(<!NOTATION)(\s+)(\S+)Únotationz(<!\[)([^\[\s]+)(\s*)(\[)z(<!DOCTYPE)(\s+)([^>\s]+)zPUBLIC|SYSTEMz[\[\]>]r/   z(%|&)[^;]*;z<!--Úcommentz	[(|)*,?+]z"[^"]*"z
\'[^\']*\'z[^-]+z-->r4   ú-zEMPTY|ANY|#PCDATAz[^>\s|()?+*,]+ú>z?CDATA|IDREFS|IDREF|ID|NMTOKENS|NMTOKEN|ENTITIES|ENTITY|NOTATIONz#REQUIRED|#IMPLIED|#FIXEDzxml:space|xml:langzSYSTEM|PUBLIC|NDATAzSYSTEM|PUBLIC)r8   rV   r[   rW   rX   rY   rZ   c                 C   s,   t | ƒsd| v sd| v sd| v rdS d S d S )Nz	<!ELEMENTz	<!ATTLISTz<!ENTITYçš™™™™™é?©r   r:   r<   r<   r=   r>   ½   s
   þzDtdLexer.analyse_textN)r@   rA   rB   rC   rJ   Ú	MULTILINErL   rM   rD   rF   rG   rH   rE   rI   r   r   r   r
   r   rQ   rN   ÚConstantr   r   r   ÚDoubleÚSingleÚReservedrR   rS   r>   r<   r<   r<   r=   r   k   sˆ    ÿÿÿÿÿÿïú
ýüÿùüüÄDr   c                
   @   sÐ   e Zd ZdZejejB ZdZdgZ	g d¢Z
g d¢ZdZdZdefd	efd
ejfdejfdejfdejfdejfdejdfdejfg	defdejdfdejdfgdefdedfdedfdedfgdœZdd„ ZdS )r   z=
    Generic lexer for XML (eXtensible Markup Language).
    ÚXMLÚxml)	z*.xmlú*.xslz*.rssr%   z*.xsdz*.wsdlz*.wsfz*.xbrlz*.pom)ztext/xmlzapplication/xmlzimage/svg+xmlzapplication/rss+xmlzapplication/atom+xmlzhttps://www.w3.org/XMLr&   z[^<&\s]+z[^<&\S]+r'   r(   r)   r*   r+   z<\s*[\w:.-]+r-   z<\s*/\s*[\w:.-]+\s*>r/   z[\w.:-]+\s*=r1   z/?\s*>r4   r5   r6   r7   )r8   r-   r1   c                 C   r9   )NgÍÌÌÌÌÌÜ?r_   r:   r<   r<   r=   r>   ì   r?   zXmlLexer.analyse_textN)r@   rA   rB   rC   rJ   r`   rL   rM   rD   rF   rG   rH   rE   rI   r
   r   r   rN   r   rO   rP   rQ   rR   r   rS   r>   r<   r<   r<   r=   r   Ã   s<    
÷

ýüïr   c                   @   sJ   e Zd ZdZdZdgZg d¢ZddgZdZdZ	h d	£Z
d
d„ Zdd„ ZdS )r   z
    A lexer for XSLT.
    ÚXSLTÚxslt)rg   r%   z*.xplzapplication/xsl+xmlzapplication/xslt+xmlzhttps://www.w3.org/TR/xslt-30z0.10>#   úcopy-ofúfor-eachúvalue-ofú
with-paramústrip-spaceúapply-importsúattribute-setúcall-templateúdecimal-formatúpreserve-spaceúapply-templatesúnamespace-aliasúprocessing-instructionÚifÚkeyÚcopyÚsortr;   ÚwhenÚparamÚchooseÚimportÚnumberÚoutputr[   rW   r   ÚmessageÚfallbackÚtemplateÚvariableÚ	attributeÚ	otherwiseÚ	transformÚ
stylesheetc                 c   sb   � t  | |¡D ]'\}}}t d|¡}|tju r(|r(| d¡| jv r(|t|fV  q|||fV  qd S )Nz</?xsl:([^>]*)/?>?é   )	r   Úget_tokens_unprocessedrJ   Úmatchr   rQ   ÚgroupÚEXTRA_KEYWORDSr   )Úselfr;   ÚindexÚtokenÚvalueÚmr<   r<   r=   rŠ     s   €úz XsltLexer.get_tokens_unprocessedc                 C   s   t | ƒr
d| v rdS d S d S )Nz<xslr^   r_   r:   r<   r<   r=   r>     s   ÿzXsltLexer.analyse_textN)r@   rA   rB   rC   rD   rF   rG   rH   rE   rI   r�   rŠ   r>   r<   r<   r<   r=   r   ñ   s    	r   c                   @   sp  e Zd ZdZdZdgZdgZdgZdZdZ	e
jZdZd	e d
 Zdefdefgdejdfdejdfgdedfde d eeeeƒƒdfedƒgedƒdejdfde d ejdfde d e d eeejeƒdfde d eedƒdfde d eejdƒdfd e d eeeeƒƒdfd!e d eej d"ƒdfed#ƒg	edƒd$e d% eeƒfd&e d' eeƒfd(ed)fd*ed+fd,efed#ƒgd-efd.e d/ ee!j"eeƒe!j"ƒfd0edfgd1efd2ej#d3fd4ej#fd5edfgd6efd7ej$dfd8ej$j%dfd9ej$j&dfd:e!dfd;e!dfged< efd0edfged< ejfd0edfgd-ej fd.e d/ ee!j"eeƒe!j"ƒfd0edfgd=œZ'd>S )?r   z
    For Haml markup.
    ÚHamlÚhamlz*.hamlztext/x-hamlzhttps://haml.infoz1.3z(?: \|\n(?=.* \|)|.)z
(?:,\s*\n|ú)ú[ \t]*\nú[ \t]*ú	\.[\w:-]+r-   ú	\#[\w:-]+ú[&!]?==Úplainú([&!]?[=~])(ú*\n)r8   Úcssú%[\w:-]+ú!!!ú*\nr4   ú(/)(\[ú*?\])(ú/úhtml-comment-blockú-#úhaml-comment-blockú(-)(ú:úfilter-blockúeval-or-plainú\{(,\n|ú)*?\}ú\[ú*?\]ú\(úhtml-attributesú	/[ \t]*\nú#pop:2ú[<>]{1,2}(?=[ \t=])ú([^#\n]|#[^{\n]|(\\\\)*\\#\{)+ú(#\{)(ú*?)(\})ú\nr/   ú[\w:-]+[ \t]*=úhtml-attribute-valuer2   ú\)ú[ \t]+ú\w+ú@\w+ú\$\w+ú'(\\\\|\\[^\\]|[^'\\\n])*'ú"(\\\\|\\[^\\]|[^"\\\n])*"ú+)r8   rž   r«   Úcontentr-   r›   r±   rº   r¥   r§   rª   N)(r@   rA   rB   rC   rD   rF   rG   rH   rE   rI   rJ   rK   rM   Ú_dotÚ
_comma_dotr
   r   r   ÚClassÚFunctionr   r   r   r   r   r   rQ   Ú	Namespacer   ÚSpecialr   rO   Ú	Decoratorr   ÚInterpolrR   ÚVariableÚInstanceÚGlobalrS   r<   r<   r<   r=   r     s®    þ

þ
þû	
þÿÿÿ
þÿðù
ÿü
ü
ú

þþ
ÿü
¯r   c                   @   s€  e Zd ZdZdZdgZdgZdgZdZdZ	e
jZdZd	efd
efgdejdfdejdfgdedfde d eeeeƒƒdfedƒgedƒdejdfde d ejdfde d e d eeejeƒdfde d eedƒdfde d eejdƒdfde d eeeeeƒƒdfde d eeeeƒƒdfd e d eej d!ƒdfed"ƒg
edƒd#e d$ eeƒfd%e d& eeƒfd'ed(fd)ed*fd+efed"ƒgd,efd-e d. ee!j"eeƒe!j"ƒfd/edfgd0efd1ej#d2fd3ej#fd4edfgd5efd6ej$dfd7ej$j%dfd8ej$j&dfd9e!dfd:e!dfged; efd/edfged; ejfd/edfgd,ej fd-e d. ee!j"eeƒe!j"ƒfd/edfgd<œZ'd=S )>r   z5
    For Scaml markup.  Scaml is Haml for Scala.
    ÚScamlÚscamlz*.scamlztext/x-scamlz"https://scalate.github.io/scalate/ú1.4Ú.r–   r—   r˜   r-   r™   rš   r›   rœ   r�   r8   rž   rŸ   r    r¡   r4   r¢   r£   r¤   r¥   r¦   úscaml-comment-blockú(-@\s*)(import)?(r¨   r©   rª   r«   r¬   r­   r®   r¯   r°   r±   r²   r³   r´   rµ   r¶   r·   r¸   r/   r¹   rº   r2   r»   r¼   r½   r¾   r¿   rÀ   rÁ   rÂ   ©r8   rž   r«   rÃ   r-   r›   r±   rº   r¥   rÓ   rª   N)(r@   rA   rB   rC   rD   rF   rG   rH   rE   rI   rJ   rK   rM   rÄ   r
   r   r   rÆ   rÇ   r   r   r   r   r   r   rQ   rÈ   r   rÉ   r   rO   r   rÊ   r   rË   rR   rÌ   rÍ   rÎ   rS   r<   r<   r<   r=   r   …  s´    þ

þ
þû	
þÿÿÿ
þ
þÿíù
ÿü
ü
ú

þþ
ÿü
¬r   c                   @   sˆ  e Zd ZdZdZddgZddgZddgZd	Zd
Z	e
jZdZdefdefgdejdfdejdfgdedfde d eeeeƒƒdfedƒgedƒde d ejdfde d e d eeejeƒdfde d eedƒdfde d eejdƒdfd e d eeeeeƒƒdfd!e d eeeeƒƒdfd"e d eejd#ƒdfd$ej dfd%ed&fg
edƒd'e d( eeƒfd)e d* eeƒfd+ed,fd-ed.fd/efed&ƒgd0efd1e d2 ee!j"eeƒe!j"ƒfd3edfgd4efd5ej#d6fd$ej#fd7edfgd8efd9ej$dfd:ej$j%dfd;ej$j&dfd<e!dfd=e!dfged> efd3edfged> ejfd3edfgd0ejfd1e d2 ee!j"eeƒe!j"ƒfd3edfgd?œZ'd@S )Ar    z‚
    For Pug markup.
    Pug is a variant of Scaml, see:
    http://scalate.fusesource.org/documentation/scaml-reference.html
    ÚPugÚpugÚjadez*.pugz*.jadez
text/x-pugztext/x-jadezhttps://pugjs.orgrÑ   rÒ   r–   r—   r˜   r-   r™   rš   r›   rœ   r�   r8   rž   r    r¡   r4   r¢   r£   r¤   r¥   r¦   rÓ   rÔ   r¨   r©   rª   r2   z\|r«   r¬   r­   r®   r¯   r°   r±   r²   r³   r´   rµ   r¶   r·   r¸   r/   r¹   rº   r»   r¼   r½   r¾   r¿   rÀ   rÁ   rÂ   rÕ   N)(r@   rA   rB   rC   rD   rF   rG   rH   rE   rI   rJ   rK   rM   rÄ   r
   r   r   rÆ   rÇ   r   r   r   r   r   r   rÈ   r   rÉ   r   rO   r   rÊ   rQ   r   rË   rR   rÌ   rÍ   rÎ   rS   r<   r<   r<   r=   r    õ  s²    þ

þ
ÿüþÿÿÿ
þ
þÿ
íù
ÿü
ü
ú

þþ
ÿü
­r    c                   @   sB   e Zd ZdZdZdgZdgZdZdZdde	e
jeeeƒfgiZdS )	r"   z#
    Lexer for urlencoded data
    Ú
urlencodedz!application/x-www-form-urlencodedz.https://en.wikipedia.org/wiki/Percent-encodingz2.16r8   z([^&=]*)(=)([^=&]*)(&?)N)r@   rA   rB   rC   rD   rF   rH   rE   rI   r   r   rQ   r   r   r   rS   r<   r<   r<   r=   r"   c  s    ÿÿr"   c                
   @   sò   e Zd ZdZdZdZdgZdgZg ZdZ	e
je
jB Zdeejeeƒejƒfdefegd	efd
eeedgd�eeƒdfdeejeeƒdfdejfdeeeeƒdfgdejfdefdeejeeƒejƒfgdeeeeƒeƒdfdeeƒdfgdœZdS )r!   z(
    For Vue Single-File Component.
    ÚVuez#https://vuejs.org/api/sfc-spec.htmlÚvuez*.vuez2.19z(\{\{)(.*?)(\}\})z[^<&{]+r/   z0((?:[@:]|v-)(?:[.\w:-]|\[[^\]]*?\])+\s*)(=)(\s*)rD   )Ústateúattr-directiver0   r1   r2   r3   r4   z[\w-]+z[:@.]z(\[)([^\]]*?)(\])z(["\'])(.*?)(\1)r7   )r8   r-   rD   rÝ   N)r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   r   r   rO   r   r   r
   r   r	   r   r   rR   r   r   rS   r<   r<   r<   r=   r!   u  sP    
ÿüþÿø
ÿýÿÿý
ér!   ),rC   rJ   Úpygments.lexerr   r   r   r   r   r   r   r	   Úpygments.tokenr
   r   r   r   r   r   r   r   Úpygments.utilr   r   Úpygments.lexers.javascriptr   Úpygments.lexers.jvmr   Úpygments.lexers.cssr   r   r   Úpygments.lexers.rubyr   Ú__all__r   r   r   r   r   r   r    Ú	JadeLexerr"   r!   r<   r<   r<   r=   Ú<module>   s(    
((OX.%opk