
    f                     ^    d dl mZmZ d dlmZ ddlmZ ddlmZm	Z	 ddl
mZ  G d d	e      Zy
)    )DictAnyindent   render_list   )BaseRenderer
BlockState)	strip_endc                   p   e Zd ZdZdZddddddd	Zd
Zd ZdefdZ	defdZ
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 y$)%RSTRendererz+A renderer for converting Markdown to ReST.rst=-~^"')r   r
               zimg-c              #   f   K   d }|D ]&  }|d   dk(  r||d<   |}| j                  ||       ( y w)Ntype
blank_lineprev)render_token)selftokensstater   toks        P/var/www/cvtools/html/venv/lib/python3.12/site-packages/mistune/renderers/rst.pyiter_tokenszRSTRenderer.iter_tokens   sJ      	0C6{l*CKD##C//	0s   /1r"   c                     g |j                   d<   | j                  ||      }|dj                  | j                  |            dz   z  }t	        |      S )Ninline_images


)envrender_tokensjoinrender_referrencesr   )r    r!   r"   outs       r$   __call__zRSTRenderer.__call__!   sO    %'		/"  /v{{42259:TAA~    c              #      K   |j                   d   }t        |      D ]J  \  }}|d   }| j                  ||      }| j                  t	        |      z   }d|z   dz   |d   z   dz   |z    L y w)Nr'   attrsz.. |z
| image:: url

   :alt: )r*   	enumeraterender_childrenINLINE_IMAGE_PREFIXstr)r    r"   imagesindextokenr2   altidents           r$   r-   zRSTRenderer.render_referrences(   s     ?+%f- 	ULE5'NE&&ue4C,,s5z9E5.</%,>NQTTT		Us   A)A+c                 0    |d   }| j                  ||      S )Nchildren)r+   )r    r;   r"   r?   s       r$   r6   zRSTRenderer.render_children0   s    $!!(E22r0   r;   returnc                 0    |d   }|j                  dd      S )Nraw|z\|)replace)r    r;   r"   texts       r$   rE   zRSTRenderer.text4   s    U|||C''r0   c                 2    d| j                  ||      z   dz   S )N*r6   r    r;   r"   s      r$   emphasiszRSTRenderer.emphasis8   s    T))%77#==r0   c                 2    d| j                  ||      z   dz   S )Nz**rH   rI   s      r$   strongzRSTRenderer.strong;   s    d**5%884??r0   c                 R    |d   }| j                  ||      }d|z   dz   |d   z   dz   S )Nr2   `z <r3   z>`__rH   )r    r;   r"   r2   rE   s        r$   linkzRSTRenderer.link>   s:    g##E51TzD 5</&88r0   c                     |j                   d   }t        |      }|j                  |       d| j                  z   t	        |      z   dz   S )Nr'   rC   )r*   lenappendr7   r8   )r    r;   r"   refsr:   s        r$   imagezRSTRenderer.imageC   sD    YY/D	ET---E
:S@@r0   c                     d|d   z   dz   S )Nz``rB    rI   s      r$   codespanzRSTRenderer.codespanI   s    eEl"T))r0   c                      y)N<linebreak>rV   rI   s      r$   	linebreakzRSTRenderer.linebreakL   s    r0   c                      y)N rV   rI   s      r$   	softbreakzRSTRenderer.softbreakO   s    r0   c                      yN rV   rI   s      r$   inline_htmlzRSTRenderer.inline_htmlR   s    r0   c                    |d   }t        |      dk(  ra|d   d   dk(  rV|d   }|d   }|j                  d      }| j                  ||      }d|d	   z   }|r|d
|z   z  }|dt        |d      z   z  }|dz   S | j	                  ||      }|j                  d      }	t        |	      dkD  rdj                  d |	D              }|dz   S )Nr?   r   r   r   rT   r2   titlez.. figure:: r3   r4   r(      rY   r)   c              3   &   K   | ]	  }d |z     yw)z| NrV   ).0lines     r$   	<genexpr>z(RSTRenderer.paragraph.<locals>.<genexpr>e   s      ? ?s   )rQ   getr6   r   r+   splitr,   )
r    r;   r"   r?   rT   r2   rc   r<   rE   liness
             r$   	paragraphzRSTRenderer.paragraphV   s    $x=A(1+f"5"@QKE'NEIIg&E&&ue4C!E%L0D--FVC///D f}	 %%h6DJJ}-E5zA~yy ? ??f}r0   c                     |d   }| j                  ||      }| j                  |d      }|dz   |t        |      z  z   dz   S )Nr2   levelr)   r(   )r6   HEADING_MARKERSrQ   )r    r;   r"   r2   rE   markers         r$   headingzRSTRenderer.headingh   sN    g##E51%%eGn5d{Vc$i//&88r0   c                      y)Nz--------------

rV   rI   s      r$   thematic_breakzRSTRenderer.thematic_breakn   s    #r0   c                 ,    | j                  ||      dz   S )Nr)   rH   rI   s      r$   
block_textzRSTRenderer.block_textq   s    ##E51D88r0   c                     |j                  di       }|j                  d      }t        |d   d      }|r!|j                         d   }d|z   dz   |z   dz   S d	|z   dz   S )
Nr2   inforB   rd   r   z
.. code:: r(   r)   z::

)ri   r   rj   )r    r;   r"   r2   rw   codelangs          r$   
block_codezRSTRenderer.block_codet   sk    		'2&yy eElE*::<?D$&/$6==d?V++r0   c                 h    t        | j                  ||      d      }|d   }d}|r|d   |vrd|z   }|S )Nrd   r   )rl   rs   rZ   rq   r   z..

)r   r6   )r    r;   r"   rE   r   ignore_blockss         r$   block_quotezRSTRenderer.block_quote~   sI    d**5%8%@V}
 DL5d?Dr0   c                 0    |d   }dt        |d      z   dz   S )NrB   z.. raw:: html

rd   r(   r   )r    r;   r"   rB   s       r$   
block_htmlzRSTRenderer.block_html   s"    El"VC%77&@@r0   c                      yr_   rV   rI   s      r$   block_errorzRSTRenderer.block_error   s    r0   c                     t        | ||      S )Nr   rI   s      r$   listzRSTRenderer.list   s    4..r0   N)!__name__
__module____qualname____doc__NAMEro   r7   r%   r   r/   r-   r6   r   r8   r   rE   rJ   rL   rO   rT   rW   rZ   r]   ra   rl   rq   rs   ru   rz   r}   r   r   r   rV   r0   r$   r   r      s   5D 
					O !0j U
 U3J 3($sCx. ( ( (>d38n >Z >C >@DcN @: @# @9$sCx. 9 9 9
A4S> A* A A*d38n *Z *C *tCH~ j S tCH~ j S c3h 
 s tCH~ j S $9T#s(^ 9J 93 9$DcN $: $# $9S#X 9z 9c 9,S#X ,z ,c ,c3h 
 s AS#X Az Ac Ac3h 
 s /$sCx. / / /r0   r   N)typingr   r   textwrapr   _listr	   corer   r   utilr   r   rV   r0   r$   <module>r      s"       + K/, K/r0   