
    c$                     0    d Z ddlmZ  G d d          ZdS )a  
Python Markdown

A Python implementation of John Gruber's Markdown.

Documentation: https://python-markdown.github.io/
GitHub: https://github.com/Python-Markdown/markdown/
PyPI: https://pypi.org/project/Markdown/

Started by Manfred Stienstra (http://www.dwerg.net/).
Maintained for a few years by Yuri Takhteyev (http://www.freewisdom.org).
Currently maintained by Waylan Limberg (https://github.com/waylan),
Dmitry Shachnev (https://github.com/mitya57) and Isaac Muse (https://github.com/facelessuser).

Copyright 2007-2018 The Python Markdown Project (v. 1.7 and later)
Copyright 2004, 2005, 2006 Yuri Takhteyev (v. 0.2-1.6b)
Copyright 2004 Manfred Stienstra (the original version)

License: BSD (see LICENSE.md for details).
   )parseBoolValuec                   B    e Zd ZdZi Zd ZddZd Zd Zd Z	d Z
d	 Zd
S )	Extensionz( Base class for extensions to subclass. c                 0    |                      |           dS )z( Initiate Extension and set up configs. N)
setConfigs)selfkwargss     <lib/python3.11/site-packages/markdown/extensions/__init__.py__init__zExtension.__init__%   s         c                 >    || j         v r| j         |         d         S |S )z8 Return a setting for the given key or an empty string.     config)r   keydefaults      r
   	getConfigzExtension.getConfig)   s(    $+ 	;s#A&&Nr   c                 N      fd j                                         D             S )z( Return all configs settings as a dict. c                 <    i | ]}|                     |          S  )r   .0r   r   s     r
   
<dictcomp>z(Extension.getConfigs.<locals>.<dictcomp>2   s'    GGGST^^C((GGGr   r   keysr   s   `r
   
getConfigszExtension.getConfigs0   s+    GGGGDK4D4D4F4FGGGGr   c                 N      fd j                                         D             S )z5 Return all config descriptions as a list of tuples. c                 :    g | ]}|j         |         d          fS )   r   r   s     r
   
<listcomp>z+Extension.getConfigInfo.<locals>.<listcomp>6   s*    IIIsdk#&q)*IIIr   r   r   s   `r
   getConfigInfozExtension.getConfigInfo4   s+    IIIIdk6F6F6H6HIIIIr   c                     t          | j        |         d         t                    rt          |          }| j        |         d         t          |d          }|| j        |         d<   dS )z8 Set a config setting for `key` with the given `value`. r   NT)preserve_none)
isinstancer   boolr   )r   r   values      r
   	setConfigzExtension.setConfig8   sj    dk#&q)400 	*"5))E;sA 	>"5===E#Cr   c                     t          |d          r|                                }|D ]\  }}|                     ||           dS )z> Set multiple config settings given a dict or list of tuples. itemsN)hasattrr+   r)   )r   r+   r   r(   s       r
   r   zExtension.setConfigs@   sU    5'"" 	"KKMME 	' 	'JCNN3&&&&	' 	'r   c                 V    t          d| j        j        d| j        j        d          )z
        Add the various processors and patterns to the Markdown Instance.

        This method must be overridden by every extension.

        Keyword arguments:

        * md: The Markdown instance.

        zExtension ".z(" must define an "extendMarkdown"method.)NotImplementedError	__class__
__module____name__)r   mds     r
   extendMarkdownzExtension.extendMarkdownH   s:     "!222DN4K4K4KM
 
 	
r   N)r   )r2   r1   __qualname____doc__r   r   r   r   r#   r)   r   r4   r   r   r
   r   r      s        22 F        H H HJ J J$ $ $' ' '
 
 
 
 
r   r   N)r6   utilr   r   r   r   r
   <module>r8      sU    * " ! ! ! ! !=
 =
 =
 =
 =
 =
 =
 =
 =
 =
r   