�
|�e� � �p � d Z ddlZddlmZmZmZmZ ddlmZ ddl m
Z
mZmZm
Z
mZmZ dgZ G d� de� Zy)z�
pygments.lexers.jsx
~~~~~~~~~~~~~~~~~~~
Lexers for JSX (React).
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)�bygroups�default�include�inherit)�JavascriptLexer)�Name�Operator�Punctuation�String�Text�
Whitespace�JsxLexerc � � e Zd ZdZdZddgZddgZddgZd Ze j e j z Z e
d� egd
efd eeej$ e� dfd
eeej$ e� fd eeej$ � dfgdefd eej( eee� dfdefdej( fd eeee� dfgd eeej( � fd ee� dfgdedfdedfdedf ed� gdedfdedf e
d� gd �Zy!)"r zGFor JavaScript Syntax Extension (JSX).
.. versionadded:: 2.17
�JSX�jsx�reactz*.jsxz*.reactztext/jsxztext/typescript-jsxzhttps://facebook.github.io/jsx/z</?>z
(<)(\w+)(\.?)�tagz(</)(\w+)(>)z (</)(\w+)�fragmentz\s+z([\w-]+)(\s*)(=)(\s*)�attrz[{}]+z[\w\.]+z(/?)(\s*)(>)z#popz(.)(\w+)z(>)z\{�
expressionz".*?"z'.*?'z#pushz\}�root)r r r r r r N)�__name__�
__module__�__qualname__�__doc__�name�aliases� filenames� mimetypes�url�re� MULTILINE�DOTALL�flagsr r r
r r �Tagr
� Attributer r r r �tokens� � �5/usr/lib/python3/dist-packages/pygments/lexers/jsx.pyr r s~ � ��
�D��g��G��)�$�I��2�3�I�
+�C��L�L�2�9�9�$�E�
�E�N��
�
�k�"�
�x��T�X�X�{�K�U�S����d�h�h��<�
�
���d�h�h�/��
�
� �Z� �
%�x����
�H�V`�'a�ci�j�
�{�#�
����(�
�h�{�D�+�F��O�
� �(�;����?�@�
�X�k�*�F�3�
�
�K��.�
�v�v�&�
�v�v�&��F�O�
� �K��)�
�K��(��F�O�
�G(�Fr) )r r! �pygments.lexerr r r r �pygments.lexers.javascriptr �pygments.tokenr r r
r r r
�__all__r r( r) r* �<module>r/ s7 ���
� >� >� 6�� � �,��7�� 7r) |