� G�g�i����dZddlmZmZmZmZmZddlmZm Z m Z m Z m Z m Z mZmZmZgd�ZGd�de��ZGd�de��ZGd �d e��ZGd �d e��ZGd �de��ZdS)z� pygments.lexers.data ~~~~~~~~~~~~~~~~~~~~ Lexers for data file format. :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. �)�Lexer�ExtendedRegexLexer� LexerContext�include�bygroups) �Comment�Error�Keyword�Literal�Name�Number� Punctuation�String� Whitespace)� YamlLexer� JsonLexer�JsonBareObjectLexer� JsonLdLexerc�"��eZdZdZ�fd�Z�xZS)�YamlLexerContextz'Indentation context for the YAML lexer.c�r��t��j|i|��g|_d|_d|_d|_dS�N�����r)�super�__init__� indent_stack�indent� next_indent�block_scalar_indent)�self�args�kwds� __class__s ��d/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/pygments/lexers/data.pyrzYamlLexerContext.__init__sD��������$�'�$�'�'�'������ ����#'�� � � �)�__name__� __module__� __qualname__�__doc__r� __classcell__�r#s@r$rrs>�������1�1�(�(�(�(�(�(�(�(�(r%rc ����eZdZdZdZdZdgZddgZdgZdZ d �Z d �Z ded �Z ded �Z d�Zd�Zd�Zd�Ziddefdefdejfde ej��dfde ej��dfde ej��dfde ed���dfg�d defdejfd!ed"fg�dd#eee��d fg�dd$eeejeej��d fg�d%d&e e��d"fd'e e��fd(e ej��fd)e e��d*fg�dd+e e��d*fd,efd-eeje ed�.����fed/��ed0��ed1��d2e ej��d3fg�d/d4ejfd5ejfd6ej fd7ejfg�d0d8e ejd�.��fd9ejd:fg�d1d;ejd<fd=ejd>fd?e!d@fdAe!dBfg�dCd,efdefdejfdDejfed/��ed1��dEe ej��dFfg�d<edC��dGejd*fg�d>dHeeje��fedC��dIejd*fg�dJd!efdKeeej"��fdLee��fdMej"fg�dNdOeej��d fdPeej��d fg�dQdRefdSefdefd,ejfg�d@edQ��dTe!j#fdUe!fd?e!d*fg�dBedQ��dVe!fdWe!j#fdXe!fdYe!d*fg�dKefdefdZe ej��d[fdLee��d*fgd\e e��d*fd]ed*fdSefded^fd,e$j%j&fd_e$j%j&fgd`e e��d*fd]ed*fdRefdSefdefd,ejfdaejfgdb��Z'df�fdd� Z(�xZ)S)grzK Lexer for YAML, a human-friendly data serialization language. �YAMLzhttp://yaml.org/�yamlz*.yamlz*.ymlz text/x-yamlz0.11c����fd�}|S)zDo not produce empty tokens.c3��K�|���}|sdS|����|fV�|���|_dS�N)�group�start�end�pos��lexer�match�context�text� token_classs �r$�callbackz%YamlLexer.something.<locals>.callback-sO������;�;�=�=�D�� ����+�+�-�-��d�2� 2� 2� 2��)�)�+�+�G�K�K�Kr%��r;r<s` r$� somethingzYamlLexer.something+s#��� &� &� &� &� &� �r%c����fd�}|S)zReset the indentation levels.c3���K�|���}g|_d|_d|_d|_|����|fV�|���|_dSr)r2rrrrr3r4r5r6s �r$r<z(YamlLexer.reset_indent.<locals>.callback7sa������;�;�=�=�D�#%�G� ��G�N�"#�G� �*.�G� '��+�+�-�-��d�2� 2� 2� 2��)�)�+�+�G�K�K�Kr%r=r>s` r$� reset_indentzYamlLexer.reset_indent5s#��� &� &� &� &� &��r%Fc������fd�}|S)z"Save a possible indentation level.c3�`�K�|���}d}�r�t|��|_|j|jkrl|j|jkr.|j���|_|j|jk�.|j|jkr||jd�}|d|j�}n|xjt|��z c_|r|����|fV�|r.|���t|��z�j|fV�|���|_ dS)N�) r2�lenrrr�popr3r r4r5)r7r8r9r:�extrar3r;s ��r$r<z'YamlLexer.save_indent.<locals>.callbackCs*������;�;�=�=�D��E�� 1�&)�$�i�i��#��&���7�7�!�-���>�>�)0�)=�)A�)A�)C�)C���"�-���>�>��*�W�^�;�;� $�W�^�_�_� 5��#�O�W�^�O�4����#�#�s�4�y�y�0�#�#�� 7��k�k�m�m�[�$�6�6�6�6�� H��k�k�m�m�C��I�I�-�{�/@�%�G�G�G�G��)�)�+�+�G�K�K�Kr%r=)r;r3r<s`` r$� save_indentzYamlLexer.save_indentAs)���� &� &� &� &� &� &�$�r%c������fd�}|S)z+Set the previously saved indentation level.c3�L�K�|���}|j|jkr+|j�|j��|j|_�s|xjt |��z c_|����|fV�|���|_dSr1) r2rrr�appendrFr3r4r5)r7r8r9r:�implicitr;s ��r$r<z&YamlLexer.set_indent.<locals>.callbackYs�������;�;�=�=�D��~�� 3�3�3��$�+�+�G�N�;�;�;�!(�!4���� 1��#�#�s�4�y�y�0�#�#��+�+�-�-��d�2� 2� 2� 2��)�)�+�+�G�K�K�Kr%r=)r;rMr<s`` r$� set_indentzYamlLexer.set_indentWs)���� &� &� &� &� &� &��r%c����fd�}|S)z5Set an explicit indentation level for a block scalar.c3�@�K�|���}d|_|sdS|�d��}|r.t|jd��}t |��}||z|_|r4|����|fV�|���|_dSdS)N�r)r2r�maxr�intr3r4r5)r7r8r9r:� increment�current_indentr;s �r$r<z3YamlLexer.set_block_scalar_indent.<locals>.callbackfs�������;�;�=�=�D�*.�G� '�� ���� � �A���I�� I�!$�W�^�Q�!7�!7��� �N�N� �.<�y�.H��+�� *��k�k�m�m�[�$�6�6�6�6�#�i�i�k�k�� � � � *� *r%r=r>s` r$�set_block_scalar_indentz!YamlLexer.set_block_scalar_indentds#��� *� *� *� *� *��r%c������fd�}|S)z(Process an empty line in a block scalar.c3��K�|���}|j�t|��|jkr|r|����|fV�nX|d|j�}||jd�}|����|fV�|���|jz�|fV�|���|_dSr1)r2rrFr3r4r5)r7r8r9r:� indentation�content�content_token_class�indent_token_classs ��r$r<z9YamlLexer.parse_block_scalar_empty_line.<locals>.callbackws�������;�;�=�=�D��+�3���I�I��!<�<�<��B��+�+�-�-�);�T�A�A�A�A��"�#?�G�$?�#?�@� ��w�:�;�;�<���k�k�m�m�%7��D�D�D�D��{�{�}�}�W�%@�@�*�G�5�5�5�5��)�)�+�+�G�K�K�Kr%r=)r\r[r<s`` r$�parse_block_scalar_empty_linez'YamlLexer.parse_block_scalar_empty_lineus)���� &� &� &� &� &� &��r%c����fd�}|S)z-Process indentation spaces in a block scalar.c3�$�K�|���}|j�ot|��t|jd��kr4|j���|j���dSt|��|_nLt|��|jkr4|j���|j���dS|r4|����|fV�|���|_ dSdS�Nr) r2rrFrRr�stackrGr3r4r5r6s �r$r<z5YamlLexer.parse_block_scalar_indent.<locals>.callback�s�������;�;�=�=�D��*�2��t�9�9��G�N�A� 6� 6�6�6��M�%�%�'�'�'��M�%�%�'�'�'��F�.1�$�i�i��+�+��t�9�9�w�:�:�:��M�%�%�'�'�'��M�%�%�'�'�'��F�� *��k�k�m�m�[�$�6�6�6�6�#�i�i�k�k�� � � � *� *r%r=r>s` r$�parse_block_scalar_indentz#YamlLexer.parse_block_scalar_indent�s#��� *� *� *� *� *� �r%c����fd�}|S)z-Process indentation spaces in a plain scalar.c3�8�K�|���}t|��|jkr4|j���|j���dS|r4|����|fV�|���|_dSdSr1)r2rFrrarGr3r4r5r6s �r$r<z5YamlLexer.parse_plain_scalar_indent.<locals>.callback�s�������;�;�=�=�D��4�y�y�G�N�*�*�� �!�!�#�#�#�� �!�!�#�#�#���� *��k�k�m�m�[�$�6�6�6�6�#�i�i�k�k�� � � � *� *r%r=r>s` r$�parse_plain_scalar_indentz#YamlLexer.parse_plain_scalar_indent�s#��� *� *� *� *� *��r%�rootz [ ]+(?=#|$)z\n+z#[^\n]*z^%YAML(?=[ ]|$)zyaml-directivez^%TAG(?=[ ]|$)z tag-directivez^(?:---|\.\.\.)(?=[ ]|$)� block-linez [ ]*(?!\s|$)T)r3)rgrYz ignored-linez\nz#pop:2z([ ]+)([0-9]+\.[0-9]+)z;([ ]+)(!|![\w-]*!)([ ]+)(!|!?[\w;/?:@&=+$,.!~*\'()\[\]%-]+)rYz[ ]*$z[ ]+(?=[?:-](?:[ ]|$))z[?:-](?=[ ]|$)z[ ]*z#popz [ ]*(?=#|$)z[ ]+z([^#,?\[\]{}"'\n]+)(:)(?=[ ]|$))rM� descriptorsz block-nodesz flow-nodesz'(?=[^\s?:,\[\]{}#&*!|>\'"%@`-]|[?:-]\S)�plain-scalar-in-block-contextz!!<[\w#;/?:@&=+$,.!~*\'()\[\]%-]+>z+!(?:[\w-]+!)?[\w#;/?:@&=+$,.!~*\'()\[\]%-]*z&[\w-]+z\*[\w-]+z :(?=[ ]|$)z[|>])�block-scalar-content�block-scalar-headerz\[z flow-sequencez\{z flow-mappingz\'zsingle-quoted-scalarz\"zdouble-quoted-scalarzflow-collectionz[?:,]z(?=[^\s?:,\[\]{}#&*!|>\'"%@`])�plain-scalar-in-flow-contextz\]z([^,:?\[\]{}"'\n]+)(:)(?=[ ]|$)z\}rjz^[ ]+$z^[ ]*z[\S\t ]+rkz([1-9])?[+-]?(?=[ ]|$)z[+-]?([1-9])?(?=[ ]|$)zquoted-scalar-whitespacesz^[ ]+z[ ]+$z\'\'z[^\s\']+z\\[0abt\tn\nvfre "\\N_LP]z5\\(?:x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})z [^\s"\\]+�"z^(?=---|\.\.\.)z#pop:3z[ ]*(?=:[ ]|:$)z [ ]+(?=#)�&plain-scalar-in-block-context-new-linez(?::(?!\s)|[^\s:])+z[ ]*(?=[,:?\[\]{}])z[^\s,:?\[\]{}]+)rnrirlNc�l��|�t|d��}t���||��Sr`)rr�get_tokens_unprocessed)r r:r9r#s �r$rpz YamlLexer.get_tokens_unprocessed�s1��� �?�&�t�Q�/�/�G��w�w�-�-�d�G�<�<�<r%)F)NN)*r&r'r(r)�name�url�aliases� filenames� mimetypes� version_addedr?rBrIrNrVr]rbrerr�Singler �Tag� Namespacerr r �Typer� Indicatorr�Variable�Labelr�Constant�Escaper �Scalar�Plain�tokensrpr*r+s@r$rrs��������� �D� �C��h�G��7�#�I���I��M���� � � �����, � � � ����"���"���( � � �E�� �Z� (� �Z� � ��� (� ���d�h�!7�!7�9I� J� � � �T�X� 6� 6�� H� (�,�,�t�~�*F�*F� � ��k�k�*�D�A�A�A� *� ,� �E�, � �Z� (� ��� (� �J�� )�  �-E�@ � &� �X�j�&� )� )�>� ;� �AE�N �:� �X�j�'�,� �G�L� I� I� � � �OE�` � �y�y��,�,�h� 7� &� � �J�(?�(?� @� � � �;�+@� A� A� B� �k�k�*�-�-�v� 6�  �aE�x � �Y�Y�z�2�2�F� ;� �j� !� 3� �X�d�h� � �;�� F� F� F� G� G� I� �G�M� "� "� �G�M� "� "� �G�L� !� !� 7� �Y�t�}� %� %� ,� .� �yE�b � 1�7�<� @�/�07� � >���� $� �$�-� (�  �cE�| � �J�J�{�'<�t�L�L�L� M� �k�+� <� >�  �}E�N � �K�)�?� ;� �K�)�>� :� �F�2� 3� �F�2� 3�  �OE�f � �j� !� �Z� � ��� (� �{�,� -� �G�M� "� "� �G�L� !� !� .� �Y�t�}� %� %� +� -� �gE�N � �G�%� &� &� �K�)�6� 2�  �OE�^ � 3� �X�d�h� � ,� ,� .� �G�%� &� &� �K�)�6� 2� �_E�t � �J� � � *� *�:�t�}� E� E� G��0�0��<�<� =� �$�-� (� ! �uE�N � &� $� $�[�%:� ;� ;� � �'� $� $�[�%:� ;� ;� � � �OE�f $� �z� "� �z� "� �Z� � �d�m� $�& �gE�| � �G�/� 0� 0� �f�m� $� �&� !� �F�F� #� ! �}E�T � �G�/� 0� 0� )�6� 2� E� �]� ��6� "� �6�6� "� ! �UE�v� � #� �Z� � ���4�>�!:�!:�H� E� �0�0��<�<�f� E� 3 � ���:�!6�!6�� ?� �:�v� .� �z� "� �Z�!I� J� �g�n�*� +� #�W�^�%9� :� * �$$�Y�Y�z�%:�%:�F� C� �:�v� .� �z� "� �z� "� �Z� � �d�m� $� ��� /�) �kE�E�E�F�N=�=�=�=�=�=�=�=�=�=r%rc��eZdZdZdZdZddgZgd�Zgd�ZdZ e d ��Z e d ��Z e d ��Z e d ��Ze d ��Zhd�Zd�ZdS)ra( For JSON data structures. Javascript-style comments are supported (like ``/* */`` and ``//``), though comments are not part of the JSON specification. This allows users to highlight JSON as it is used in the wild. No validation is performed on the input JSON document. �JSONzhttps://www.json.org�jsonz json-object)z*.jsonz*.jsonlz*.ndjsonz Pipfile.lock)zapplication/jsonzapplication/json-objectzapplication/x-ndjsonzapplication/jsonlzapplication/json-seqz1.5z -0123456789z.eE+� truefalsenull�0123456789abcdefABCDEFz{}[],>� � � � c #�, K�d}d}d}d}d}d}d}d} d} d} d} d} d}g}t|��D�]p\}}|rk|r||jvr |dz}|sd}nUd}d}nP|r |dkrd}nEd}nB|dkrd}n9|dkr3|�|tj|||dz�f��d}d}d}�s|rJ||jvr�|r&|�|t |||�f��n|t |||�fV�d}�n�|r'||jvr��|tj |||�fV�d}�ny|rR||j vr��||j vrd}��|r|tj |||�fV�n|tj|||�fV�d}d}�n%| r#||jvr��I|t |||�fV�d} �n| rQ|d kr��k|r+|�|t"j|||�f��n|t"j|||�fV�d} n�| rc|d krd} nX| rVd} |d krN|r.|�|t"j|||dz�f��n|t"j|||dz�fV�d} ��| rFd} |d krd} ��'|d krd} ��1|Ed {V��|���|t*|||�fV�|}|dkrd}��m||jvrd}��z|d vr |Ed {V��|���d}���||j vr |Ed {V��|���d}���|dkrH|D]-\}}}|tjur|t,j|fV��&|||fV��.|���d} ��||jvr |Ed {V��|���d} ��>|d krd} ��H|Ed {V��|���|t*|fV���r|Ed {V��|r|t*||d �fV�d S|r|tj ||d �fV�d S|r|tj||d �fV�d S|r|tj ||d �fV�d S|r|t ||d �fV�d S| r|t ||d �fV�d S| r|t"j||d �fV�d S| r|t*||d �fV�d S| r|t*||d �fV�d Sd S)zParse JSON data.FrrQ�u��\Trmr��*�/N>�f�n�t�:)� enumerate� hexadecimalsrLr�Double� whitespacesr� constantsr r~�integers�floatsr �Float�Integer� punctuationsrrrw� Multiline�clearr r rx)r r:� in_string� in_escape�in_unicode_escape� in_whitespace� in_constant� in_number�in_float�in_punctuation�in_comment_single�in_comment_multiline�expecting_second_comment_opener�expecting_second_comment_closerr3�queue�stop� character�_start�_token�_texts r$rpz JsonLexer.get_tokens_unprocessed�sV����� �� ���� �� �� �����!��$��*/�'�*/�'���(��(����j .�j .�O�D�)��m 5�$�*� �D�$5�5�5�)�Q�.�)�0�.�(-�I��,-�)�$)� � �� *� �C�'�'�,-�)�)�$)� � ��$�&�&� $�I�I��#�%�%��L�L�%����U�4�!�8�^�8L�!M�N�N�N� %�I� %�I�()�%���R 5��� 0�0�0���>��L�L�%��T�%��*�5E�!F�G�G�G�G���T�%��*�-=�=�=�=�=� %� � ��G 5����.�.���W�-�t�E�$�J�/?�?�?�?�?�#� � ��? 5��� �-�-���$�+�-�-�#�H���B����t�E�$�J�/?�?�?�?�?�?�����e�D�j�1A�A�A�A�A�!� � ��� �0 5��� 1�1�1���[�$�u�T�z�*:�:�:�:�:�!&���#�( 5���$�$���B��L�L�%����e�D�j�9I�!J�K�K�K�K�����e�D�j�1A�A�A�A�A�$)�!�!�&� 5���#�#�6:�3�3�4�5�6;�3� �C�'�'� �Q�!�L�L�%��1B�D��t�VW�x��DX�)Y�Z�Z�Z�Z�"'��):�D��t�a�x��<P�"P�P�P�P�/4�,��0� 5�27�/���#�#�(,�%���#�%�%�+/�(��!� � � � � � � �� � � � � ��U�D��t��$4�4�4�4�4��E��C��� � � ��d�.�.�.� $� � ��o�-�-� � � � � � � � �� � � � � �"� � ��d�m�+�+� � � � � � � � �� � � � � � � � ��c�!�!�-2� 4� 4�)�F�F�E����.�.�$�d�h��5�5�5�5�5�$�f�e�3�3�3�3�3�� � � � � �!%����d�/�/�/� � � � � � � � �� � � � � �!%����c�!�!�26�/�/�!� � � � � � � �� � � � � ��U�I�-�-�-�-�-��������� � -����U�V�V� �,� ,� ,� ,� ,� ,� � -����t�E�F�F�|�3� 3� 3� 3� 3� 3� � -�����e�f�f��5� 5� 5� 5� 5� 5� � -���)�4����<�7� 7� 7� 7� 7� 7� � -���T�%�&�&�\�1� 1� 1� 1� 1� 1� � -���d�5�6�6�l�2� 2� 2� 2� 2� 2� � -�����e�f�f��5� 5� 5� 5� 5� 5� !� -����U�V�V� �,� ,� ,� ,� ,� ,� ,� -����U�V�V� �,� ,� ,� ,� ,� ,� -� -r%N)r&r'r(r)rqrrrsrtrurv�setr�r�r�r�r�r�rpr=r%r$rr�s��������� �D� �C��}�%�G�A�A�A�I�E�E�E�I��M��s�=�!�!�H� �S��[�[�F���O�$�$�I��3�/�0�0�L��3�w�<�<�L�:�:�:�K�e-�e-�e-�e-�e-r%rc�&�eZdZdZdZgZgZgZdZdS)rz� For JSON data structures (with missing object curly braces). .. deprecated:: 2.8.0 Behaves the same as `JsonLexer` now. �JSONBareObjectz2.2N) r&r'r(r)rqrsrtrurvr=r%r$rr�s3�������� �D��G��I��I��M�M�Mr%rc�Z��eZdZdZdZdZddgZdgZdgZdZ d �d D��Z �fd �Z �xZ S) rz" For JSON-LD linked data. zJSON-LDzhttps://json-ld.org/�jsonldzjson-ldz*.jsonldzapplication/ld+jsonz2.0c��h|]}d|�d��� S)z"@rmr=)�.0�keywords r$� <setcomp>zJsonLdLexer.<setcomp>�s0����� � �W������r%)�base� containerr9� direction�graph�id�import�included�indexr��language�list�nest�none�prefix� propagate� protected�reverser��type�value�version�vocabc#��K�t���|��D]6\}}}|tjur||jvr|tj|fV��/|||fV��7dSr1)rrpr rx�json_ld_keywords� Decorator)r r:r3�tokenr�r#s �r$rpz"JsonLdLexer.get_tokens_unprocessed�s������#(�7�7�#A�#A�$�#G�#G� *� *� �E�5�%���� � �U�d�.C�%C�%C��T�^�U�2�2�2�2�2��U�E�)�)�)�)�)�  *� *r%) r&r'r(r)rqrrrsrtrurvr�rpr*r+s@r$rr�s���������� �D� �C���#�G�� �I�&�'�I��M��� �����:*�*�*�*�*�*�*�*�*r%rN)r)�pygments.lexerrrrrr�pygments.tokenrr r r r r rrr�__all__rrrrrr=r%r$�<module>r�s�������������������$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$� K� J� J��(�(�(�(�(�|�(�(�(�S=�S=�S=�S=�S=�"�S=�S=�S=�l F-�F-�F-�F-�F-��F-�F-�F-�R � � � � �)� � � � .*�.*�.*�.*�.*�)�.*�.*�.*�.*�.*r%
Memory