o
    ¼>h(
  ã                   @  s¢   d Z ddlmZ ddlmZ ddlmZ ddlZddlZddl	m
Z
 e d	¡Ze d
¡Ze d¡Ze d¡Ze d¡ZG dd„ deƒZG dd„ deƒZdd„ ZdS )z“
This extension adds Meta Data handling to markdown.

See the [documentation](https://Python-Markdown.github.io/extensions/meta_data)
for details.
é    )Úannotationsé   )Ú	Extensioné   )ÚPreprocessorN)ÚAnyÚMARKDOWNz1^[ ]{0,3}(?P<key>[A-Za-z0-9_-]+):\s*(?P<value>.*)z^[ ]{4,}(?P<value>.*)z^-{3}(\s.*)?z^(-{3}|\.{3})(\s.*)?c                   @  s"   e Zd ZdZdd„ Zd	dd„ZdS )
ÚMetaExtensionz* Meta-Data extension for Python-Markdown. c                 C  s(   |  | ¡ || _|j t|ƒdd¡ dS )z. Add `MetaPreprocessor` to Markdown instance. Úmetaé   N)ÚregisterExtensionÚmdÚpreprocessorsÚregisterÚMetaPreprocessor)Úselfr   © r   úx/var/www/vedio/testing/chatpythonscript.ninositsolution.com/env/lib/python3.10/site-packages/markdown/extensions/meta.pyÚextendMarkdown*   s   
zMetaExtension.extendMarkdownÚreturnÚNonec                 C  s   i | j _d S )N)r   ÚMeta)r   r   r   r   Úreset0   s   zMetaExtension.resetN)r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r	   '   s    r	   c                   @  s   e Zd ZdZddd„ZdS )	r   z Get Meta-Data. Úlinesú	list[str]r   c                 C  sò   i }d}|rt  |d ¡r| d¡ |rs| d¡}t |¡}| ¡ dks)t |¡r*nI|rT| d¡ ¡  ¡ }| d¡ ¡ }z	||  |¡ W n+ t	yS   |g||< Y nw t
 |¡}|rj|rj||  | d¡ ¡ ¡ n| d|¡ n|s|| j_|S )z- Parse Meta-Data and store in Markdown.Meta. Nr   Ú ÚkeyÚvalue)ÚBEGIN_REÚmatchÚpopÚMETA_REÚstripÚEND_REÚgroupÚlowerÚappendÚKeyErrorÚMETA_MORE_REÚinsertr   r   )r   r   r
   r    ÚlineÚm1r!   Úm2r   r   r   Úrun7   s2   


ÿ
ízMetaPreprocessor.runN)r   r   r   r   )r   r   r   r   r1   r   r   r   r   r   4   s    r   c                  K  s   t di | ¤ŽS )Nr   )r	   )Úkwargsr   r   r   ÚmakeExtensionU   s   r3   )r   Ú
__future__r   r   r   r   r   ÚreÚloggingÚtypingr   Ú	getLoggerÚlogÚcompiler%   r,   r"   r'   r	   r   r3   r   r   r   r   Ú<module>   s   




!