
    Ph              	           d dl Z d dlmZmZmZmZ erddlmZmZ ddl	m
Z
 dgZ e j                  d      Zdd	d
ddeeeef      fdZddddededefdZddZdeeeef      deeeef      fdZdeeef   ddfdZy)    N)TYPE_CHECKINGAnyDictIterable   )BaseRenderer
BlockState)Markdown
task_listsz^(\[[ xX]\])\s+mdr
   stater	   returnc                 ,    t        |j                        S )N)_rewrite_all_list_itemstokens)r   r   s     T/var/www/html/saasai/venv/lib/python3.12/site-packages/mistune/plugins/task_lists.pytask_lists_hookr      s    "5<<00    rendererr   textcheckedc                     d}|r|dz  }n|dz  }|j                  d      r|j                  dd|z   d      }n||z   }d|z   dz   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      sZ    PHL Du||E58#3Q7$(4/);;r   c                     | j                   j                  t               | j                  r;| j                  j                  dk(  r!| j                  j                  dt               yyy)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                 `    | D ](  }|d   dk(  rt        |       d|v st        |d          * | S )Ntype	list_itemchildren)_rewrite_list_itemr   )r   toks     r   r   r   1   s;    v;+%s##C
O4	 
 Mr   r*   c                     | d   }|rf|d   }|j                  dd      }t        j                  |      }|r7|j                  d      }||j	                         d  |d<   d| d<   d|d	k7  i| d
<   y y y )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"&quuwy/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   