
    ^h              	          S SK r S SKJrJrJrJr  \(       a  SSKJrJr  SSK	J
r
  S/r\ R                  " S5      rSS	S
SS\\\\4      4S jrSSSS\S\S\4S jjrSS jrS\\\\4      S\\\\4      4S jrS\\\4   SS4S jrg)    N)TYPE_CHECKINGAnyDictIterable   )BaseRenderer
BlockState)Markdown
task_listsz^(\[[ xX]\])\s+mdr
   stater	   returnc                 ,    [        UR                  5      $ )N)_rewrite_all_list_itemstokens)r   r   s     T/home/james-whalen/.local/lib/python3.13/site-packages/mistune/plugins/task_lists.pytask_lists_hookr      s    "5<<00    rendererr   textcheckedc                     SnU(       a  US-  nOUS-  nUR                  S5      (       a  UR                  SSU-   S5      nOX1-   nSU-   S-   $ )Nz?<input class="task-list-item-checkbox" type="checkbox" disabledz
 checked/>z/>z<p>   z<li class="task-list-item">z</li>
)
startswithreplace)r   r   r   checkboxs       r   render_task_list_itemr      s[    PHL Du||E58#3Q7(4/);;r   c                     U R                   R                  [        5        U R                  (       a<  U R                  R                  S:X  a!  U R                  R                  S[        5        ggg)zA mistune plugin to support task lists. Spec defined by
GitHub flavored Markdown and commonly used by many parsers:

.. code-block:: text

    - [ ] unchecked task
    - [x] checked task

:param md: Markdown instance
htmltask_list_itemN)before_render_hooksappendr   r   NAMEregisterr   )r   s    r   r   r   !   sM     !!/2	{{r{{''61
-/DE 2{r   r   c                 l    U  H-  nUS   S:X  a  [        U5        SU;   d  M  [        US   5        M/     U $ )Ntype	list_itemchildren)_rewrite_list_itemr   )r   toks     r   r   r   1   s;    v;+%s##C
O4	 
 Mr   r*   c                     U S   nU(       aj  US   nUR                  SS5      n[        R                  U5      nU(       a6  UR                  S5      nX4R	                  5       S  US'   SU S'   SUS	:g  0U S
'   g g g )Nr(   r   r    r   r    r&   r   z[ ]attrs)getTASK_LIST_ITEMmatchgroupend)r*   r(   first_childr   mmarks         r   r)   r)   :   s    :Hqkvr*  &771:D"&uuwy/K*CK%tu}5CL 	 r   )F)r   r
   r   N)retypingr   r   r   r   corer   r	   markdownr
   __all__compiler/   strr   boolr   r   r   r)    r   r   <module>r?      s    	 5 5/#. ./1
 1< 1HT#s(^<T 1<N <# < <Y\ <F HT#s(^$< $sTWx.AY 6DcN 6t 6r   