
    Mhb                         d dl Z d dlmZ d dl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  e j        d	e j                  Z G d
 de	          ZdedefdZdS )    N)indent)AnyDictIterablecast   )BaseRenderer
BlockState)	strip_end   render_listz^[`~]+c                   2   e Zd ZdZdZdeeeef                  de	defdZ
de	dee         fdZdeeef         de	defd	Zdeeef         de	defd
Zdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdeeef         de	defdZdS )MarkdownRendererz&A renderer to re-format Markdown text.markdowntokensstatereturnc                     |                      ||          }|d                    |                     |                    dz   z  }t          |          S )N


)render_tokensjoinrender_referrencesr   )selfr   r   outs       Z/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/mistune/renderers/markdown.py__call__zMarkdownRenderer.__call__   sL      //v{{422599::TAA~~    c              #      K   |j         d         }|D ]G}||         }d|d         z   dz   |d         z   }|                    d          }|r|d|z   dz   z  }|V  Hd S )	N	ref_links[labelz]: urltitle "")envget)r   r   r!   keyattrstextr%   s          r   r   z#MarkdownRenderer.render_referrences   s      Ik*	 	 	CcNEw'%/%,>DIIg&&E +us**JJJJ	 	r   tokenc                 >    |d         }|                      ||          S )Nchildren)r   )r   r-   r   r/   s       r   render_childrenz MarkdownRenderer.render_children!   s"    $!!(E222r   c                 8    t          t          |d                   S Nrawr   strr   r-   r   s      r   r,   zMarkdownRenderer.text%       Cu&&&r   c                 :    d|                      ||          z   dz   S )N*r0   r6   s      r   emphasiszMarkdownRenderer.emphasis(   s"    T))%777#==r   c                 :    d|                      ||          z   dz   S )Nz**r:   r6   s      r   strongzMarkdownRenderer.strong+   s"    d**5%8884??r   c                    t          t          |                    d                    }|                     ||          }d|z   dz   }|r|dz   |z   dz   S |d         }|d         }|                    d          }||k    r
|sd|z   dz   S d	|z   |k    r
|sd|z   dz   S |d
z  }d
|v sd|v r|d|z   dz   z  }n||z  }|r|d|z   dz   z  }|dz   S )Nr#   r"   ]r+   r$   r%   <>zmailto:()r&   r'   )r   r5   r)   r0   )	r   r-   r   r#   r,   r   r+   r$   r%   s	            r   linkzMarkdownRenderer.link.   s   S%))G,,--##E511Dj3 	+9u$s**gEl		'""3;;u;:##$$U$:##s
#::39s?"CC3JC 	&4%<#%%CSyr   c                 4    d|                      ||          z   S )N!)rD   r6   s      r   imagezMarkdownRenderer.imageF   s    TYYue,,,,r   c                 D    dt          t          |d                   z   dz   S )N`r3   r4   r6   s      r   codespanzMarkdownRenderer.codespanI   s     T#uU|,,,s22r   c                     dS )Nz  
 r6   s      r   	linebreakzMarkdownRenderer.linebreakL   s    vr   c                     dS Nr   rL   r6   s      r   	softbreakzMarkdownRenderer.softbreakO   s    tr   c                     dS N rL   r6   s      r   
blank_linezMarkdownRenderer.blank_lineR       rr   c                 8    t          t          |d                   S r2   r4   r6   s      r   inline_htmlzMarkdownRenderer.inline_htmlU   r7   r   c                 8    |                      ||          }|dz   S )Nr   r:   r   r-   r   r,   s       r   	paragraphzMarkdownRenderer.paragraphX   s!    ##E511f}r   c                     t          t          |d         d                   }d|z  }|                     ||          }|dz   |z   dz   S )Nr+   level# r   )r   intr0   )r   r-   r   r\   markerr,   s         r   headingzMarkdownRenderer.heading\   sL    S%.122u##E511|d"V++r   c                     dS )Nz***

rL   r6   s      r   thematic_breakzMarkdownRenderer.thematic_breakb   s    yr   c                 4    |                      ||          dz   S rO   r:   r6   s      r   
block_textzMarkdownRenderer.block_texte   s    ##E511D88r   c                 t   |                     di           }t          t          |                     dd                    }t          t          |d                   }|r|d         dk    r|dz  }|                     d          }|st          |          }t          t          |          }||z   dz   |z   |z   dz   S )	Nr+   inforS   r3   r   r`   r   )r)   r   r5   _get_fenced_marker)r   r-   r   r+   rg   coder`   marker2s           r   
block_codezMarkdownRenderer.block_codeh   s    		'2&&C62..//Cu&& 	DH$$DLD8$$ 	.'--FsF##~$t+g5>>r   c                     t          |                     ||          dd           }|                    d          }|dz   S )Nz> c                     dS )NTrL   )_s    r   <lambda>z.MarkdownRenderer.block_quote.<locals>.<lambda>v   s    $ r   z> 
r   )r   r0   rstriprY   s       r   block_quotezMarkdownRenderer.block_quoteu   s@    d**5%88$OO{{6""f}r   c                 >    t          t          |d                   dz   S )Nr3   r   r4   r6   s      r   
block_htmlzMarkdownRenderer.block_htmlz   s    Cu&&//r   c                     dS rR   rL   r6   s      r   block_errorzMarkdownRenderer.block_error}   rU   r   c                 $    t          | ||          S )Nr   r6   s      r   listzMarkdownRenderer.list   s    4...r   N) __name__
__module____qualname____doc__NAMEr   r   r5   r   r
   r   r   r0   r,   r;   r=   rD   rG   rJ   rM   rP   rT   rW   rZ   ra   rc   re   rl   rr   rt   rv   rx   rL   r   r   r   r      sV       00DxS#X7 
 s    
 x}    3T#s(^ 3J 33 3 3 3 3'$sCx. ' ' ' ' ' '>d38n >Z >C > > > >@DcN @: @# @ @ @ @$sCx.      0-4S> -* - - - - -3d38n 3Z 3C 3 3 3 3tCH~ j S    tCH~ j S    S#X z c    'c3h '
 's ' ' ' 'tCH~ j S    ,T#s(^ ,J ,3 , , , ,DcN : #    9S#X 9z 9c 9 9 9 9?S#X ?z ?c ? ? ? ?c3h 
 s    
0S#X 0z 0c 0 0 0 0c3h 
 s    /$sCx. / / / / / / / /r   r   rj   r   c                 ,   t                               |           }|sdS g }g }|D ]S}|d         dk    r#|                    t          |                     1|                    t          |                     T|sdS |sdS dt	          |          dz   z  S )Nz```r   rI   z~~~r   )	fenced_refindallappendlenmax)rj   foundtickswavesss        r   ri   ri      s    d##E uEE ! !Q43;;LLQ    LLQ     u u#e**q.!!r   )retextwrapr   typingr   r   r   r   corer	   r
   utilr   _listr   compileMr   r   r5   ri   rL   r   r   <module>r      s    				       , , , , , , , , , , , , + + + + + + + +            BJy"$''	u/ u/ u/ u/ u/| u/ u/ u/p"S "S " " " " " "r   