ó
    û¦ÖgÈ  ã                  ó‚   • S r SSKJr  SSKJrJrJr   " S S\5      rSS jr " S S	5      r	 " S
 S\\	   5      r
SS jrg)a  
Deals with generating the per-page table of contents.

For the sake of simplicity we use the Python-Markdown `toc` extension to
generate a list of dicts for each toc item, and then store it as AnchorLinks to
maintain compatibility with older versions of MkDocs.
é    )Úannotations)ÚIterableÚIteratorÚ	TypedDictc                  ó>   • \ rS rSr% S\S'   S\S'   S\S'   S\S'   S	rg
)Ú	_TocTokené   ÚintÚlevelÚstrÚidÚnameúlist[_TocToken]Úchildren© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__Ú__static_attributes__r   ó    Ú6/usr/lib/python3/dist-packages/mkdocs/structure/toc.pyr   r      s   ‡ ØƒJØƒGØ
ƒIØÖr   r   ÚTableOfContentsc                óŒ   • U  Vs/ s H  n[        U5      PM     nn[        U5      (       a
  SUS   l        [        U5      $ s  snf )NTr   )Ú_parse_toc_tokenÚlenÚactiver   )Ú
toc_tokensÚiÚtocs      r   Úget_tocr"      s@   € Ù(2Ó
3ª
 1Ô˜AÖ©
€CÐ
3ä
ˆ3‡x�xØˆˆA‰ŒÜ˜3ÓÐùò	 4s   …Ac                  ót   • \ rS rSr% SrSS jrS\S'    \SS j5       rS\S'    S	\S
'    SS jr	SSS jjr
Srg)Ú
AnchorLinké   z(A single entry in the table of contents.Útitler   r   r
   c                ó<   • XUsU l         U l        U l        / U l        g ©N)r&   r   r   r   )Úselfr&   r   r   s       r   Ú__init__ÚAnchorLink.__init__   s   € Ø*/°UÐ'ˆŒ
�D”G˜TœZØˆ�r   c                ó    • SU R                   -   $ )z0The hash fragment of a URL pointing to the item.Ú#)r   ©r)   s    r   ÚurlÚAnchorLink.url&   s   € ð �T—W‘W‰}Ðr   úlist[AnchorLink]r   c                ó"   • U R                  5       $ r(   )Úindent_printr.   s    r   Ú__str__ÚAnchorLink.__str__1   s   € Ø× Ñ Ó"Ð"r   c                óž   • SU-  nU U R                    SU R                   S3nU R                   H  nX4R                  US-   5      -  nM     U$ )Nz    z - Ú
é   )r&   r/   r   r3   )r)   ÚdepthÚindentÚretÚitems        r   r3   ÚAnchorLink.indent_print4   sS   € Ø˜%‘ˆØ�˜Ÿ™˜ C¨¯© z°Ð4ˆØ—M”MˆDØ×$Ñ$ U¨Q¡YÓ/Ñ/ŠCñ "àˆ
r   )r   r   r   r&   N)r&   r   r   r   r   r
   ÚreturnÚNone©r>   r   )r   )r9   r
   r>   r   )r   r   r   r   Ú__doc__r*   r   Úpropertyr/   r4   r3   r   r   r   r   r$   r$      sH   ‡ Ù2ôð ƒJØ(àóó ðð ƒJØ+àÓØ)ô#÷ñ r   r$   c                  ó@   • \ rS rSrSrS	S jrS
S jrSS jrSS jrSr	g)r   é<   z2Represents the table of contents for a given page.c                ó   • Xl         g r(   ©Úitems)r)   rG   s     r   r*   ÚTableOfContents.__init__?   s   € Ø�
r   c                ó,   • [        U R                  5      $ r(   )ÚiterrG   r.   s    r   Ú__iter__ÚTableOfContents.__iter__B   s   € Ü�D—J‘JÓÐr   c                ó,   • [        U R                  5      $ r(   )r   rG   r.   s    r   Ú__len__ÚTableOfContents.__len__E   s   € Ü�4—:‘:‹Ðr   c                ó2   • SR                  S U  5       5      $ )NÚ c              3  ó8   #   • U  H  n[        U5      v •  M     g 7fr(   )r   )Ú.0r<   s     r   Ú	<genexpr>Ú*TableOfContents.__str__.<locals>.<genexpr>I   s   é € Ð2ªT T”s˜4—y�yªTùs   ‚)Újoinr.   s    r   r4   ÚTableOfContents.__str__H   s   € Ø�w‰wÑ2©TÓ2Ó2Ð2r   rF   N)rG   r1   r>   r?   )r>   zIterator[AnchorLink])r>   r
   r@   )
r   r   r   r   rA   r*   rK   rN   r4   r   r   r   r   r   r   <   s   † Ù<ôô ô÷3r   c                ó’   • [        U S   U S   U S   5      nU S    H'  nUR                  R                  [        U5      5        M)     U$ )Nr   r   r   r   )r$   r   Úappendr   )ÚtokenÚanchorr    s      r   r   r   L   sH   € Ü˜˜f™ u¨T¡{°E¸'±NÓC€FØ�:ÔˆØ�‰×ÑÔ/°Ó2Ö3ñ à€Mr   N)r   r   r>   r   )rZ   r   r>   r$   )rA   Ú
__future__r   Útypingr   r   r   r   r"   r$   r   r   r   r   r   Ú<module>r^      sG   ðñõ #ç 0Ñ 0ô�	ô ô ÷ñ ô@3�h˜zÑ*ô 3õ r   