
    )i                         S SK Jr  S SKJrJr  SSKJr  SSKJr  SSK	J
r
  SSKJr  \(       a  S SKJr   " S	 S
\5      rg)    )annotations)TYPE_CHECKINGLiteral   )
isStrSpace)	StateBase)Token)EnvType)
MarkdownItc                      \ rS rSr          SS jrSS jrSS jrSS jrSS jrSS jr	SS jr
SS	 jrSS
 jrSS jrSS jrSS jrSS jrSrg)
StateBlock   c                   Xl         X l        X0l        X@l        / U l        / U l        / U l        / U l        / U l        SU l	        SU l
        SU l        SU l        SU l        SU l        SU l        SU l        SU l        SnS=n=n=p[%        U R                   5      n
['        U R                   5       H  u  p{U(       d0  [)        U5      (       a  US-  nUS:X  a  U	SU	S-  -
  -  n	OU	S-  n	M:  S	nUS
:X  d
  XzS-
  :X  d  ML  US
:w  a  US-  nU R                  R+                  U5        U R
                  R+                  U5        U R                  R+                  U5        U R                  R+                  U	5        U R                  R+                  S5        SnSnSn	US-   nM     U R                  R+                  U
5        U R
                  R+                  U
5        U R                  R+                  S5        U R                  R+                  S5        U R                  R+                  S5        [%        U R                  5      S-
  U l        SU R                  S   R,                  R/                  5       ;   U l        g )Nr   Froot    	   T
codeblock)srcmdenvtokensbMarkseMarkstShiftsCountbsCount	blkIndentlinelineMaxtightddIndent
listIndent
parentTypelevelresultlen	enumerater   appendrulerget_active_rules_code_enabled)selfr   r   r   r   indent_foundstartposindentoffsetlength	characters               c/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/markdown_it/rules_block/state_block.py__init__StateBlock.__init__   s/      !#!#!#!# #% 	
 !
  ())))fTXX'1NCi((aKF D(!fqj.0!#'LD CA:$5$1HC""5)""3'""6*""6*##A&$a3 28 	6"6"11A4;;'!+ $twww'7'='='N'N'PP    c           	         U R                   R                   SU R                   SU R                   S[	        U R
                  5       S3$ )Nz(line=z,level=z,tokens=))	__class____name__r#   r)   r+   r   )r1   s    r9   __repr__StateBlock.__repr__q   sD    ~~&&'TYYKwtzzl(3t{{;K:LAO	
r<   c                    [        XU5      nSUl        US:  a  U =R                  S-  sl        U R                  Ul        US:  a  U =R                  S-  sl        U R                  R	                  U5        U$ )zPush new token to "stream".Tr   r   )r	   r   r)   r   r-   )r1   ttypetagnestingtokens        r9   pushStateBlock.pushw   s_    e'*Q;JJ!OJjjQ;JJ!OJ5!r<   c                `    U R                   U   U R                  U   -   U R                  U   :  $ ).)r   r   r   r1   r#   s     r9   isEmptyStateBlock.isEmpty   s-    D!DKK$55$++d:KKKr<   c                    XR                   :  aK   U R                  U   U R                  U   -   U R                  U   :  a   U$  US-  nXR                   :  a  MK  U$ ! [         a     N$f = f)rK   r   )r$   r   r   r   
IndexError)r1   from_poss     r9   skipEmptyLinesStateBlock.skipEmptyLines   s    %KK)DKK,AAT[[F    MH %   s   0A 
A*)A*c                z      U R                   U   n[        U5      (       d   U$ US-  nM*  ! [         a     U$ f = f)z Skip spaces from given position.r   )r   rP   r   )r1   r4   currents      r9   
skipSpacesStateBlock.skipSpaces   sW    ((3- g&&
 1HC    
s   , 
::c                z    X::  a  U$ X:  a.  US-  n[        U R                  U   5      (       d  US-   $ X:  a  M.  U$ )z+Skip spaces from given position in reverse.r   )r   r   )r1   r4   minimums      r9   skipSpacesBackStateBlock.skipSpacesBack   sD    >Jm1HCdhhsm,,Qw m 
r<   c                d      U R                   U   nX2:w  a   U$ US-  nM  ! [         a     U$ f = f)z(Skip character code from given position.r   )srcCharCoderP   )r1   r4   r   rU   s       r9   	skipCharsStateBlock.skipChars   sT    **3/ 
 1HC    
   ! 
//c                d      U R                   U   nX2:w  a   U$ US-  nM  ! [         a     U$ f = f)z*Skip character string from given position.r   )r   rP   )r1   r4   chrU   s       r9   skipCharsStrStateBlock.skipCharsStr   sQ    ((3- }
 1HC    
r`   c                d    X::  a  U$ X:  a#  US-  nX R                   U   :w  a  US-   $ X:  a  M#  U$ )z4Skip character code reverse from given position - 1.r   )r]   )r1   r4   r   rY   s       r9   skipCharsBackStateBlock.skipCharsBack   sB    >Jm1HC'',,Qw m 
r<   c                d    X::  a  U$ X:  a#  US-  nX R                   U   :w  a  US-   $ X:  a  M#  U$ )z6Skip character string reverse from given position - 1.r   )r   )r1   r4   rb   rY   s       r9   skipCharsStrBackStateBlock.skipCharsStrBack   s?    >Jm1HCXXc]"Qw m 
r<   c                `   UnX:  a  gS/X!-
  -  nSnXR:  Ga  SnU R                   U   =pUS-   U:  d  U(       a  U R                  U   S-   OU R                  U   nX:  ax  X:  as  U R                  U
   n[        U5      (       a'  US:X  a  USXR                  U   -   S-  -
  -  nO"US-  nOX-
  U R
                  U   :  a  US-  nOOU
S-  n
X:  a  X:  a  Ms  X:  a  SX-
  -  U R                  X -   XgS-
  '   OU R                  X XgS-
  '   US-  nUS-  nXR:  a  GM  SR                  U5      $ )zCut lines range from source.r   r   r   r   r    )r   r   r   r   r!   r   join)r1   beginendr5   
keepLastLFr#   queuei
lineIndent	lineStartfirstlastrb   s                r9   getLinesStateBlock.getLines   s`   <$jJ $D 11I !8c>Z D!A%[[&  <j&9XXe_b>>Tz"a:T8J+Ja*O&OO
"a
&T)::!OJ
 <j&9 " !$z': ;txx?SS!e#xx3!eAIDFA= j@ wwu~r<   c                f    U R                   =(       a    U R                  U   U R                  -
  S:  $ )zoCheck if line is a code block,
i.e. the code block rule is enabled and text is indented by more than 3 spaces.
r   )r0   r    r"   rL   s     r9   is_code_blockStateBlock.is_code_block  s,     !!Ot{{4'84>>'Ia&OOr<   )r0   r   r"   r!   r&   r   r   r)   r#   r$   r'   r   r(   r*   r    r   r   r%   r   N)
r   strr   r   r   r
   r   zlist[Token]returnNone)r}   r|   )rD   r|   rE   r|   rF   zLiteral[-1, 0, 1]r}   r	   )r#   intr}   bool)rQ   r   r}   r   )r4   r   r}   r   )r4   r   rY   r   r}   r   )r4   r   r   r   r}   r   )r4   r   rb   r|   r}   r   )r4   r   r   r   rY   r   r}   r   )r4   r   rb   r|   rY   r   r}   r   )
rn   r   ro   r   r5   r   rp   r   r}   r|   )r@   
__module____qualname____firstlineno__r:   rA   rH   rM   rR   rV   rZ   r^   rc   rf   ri   rw   rz   __static_attributes__ r<   r9   r   r      s{    `Q`Q&`Q-4`Q>I`Q	`QD

L


)VPr<   r   N)
__future__r   typingr   r   common.utilsr   r.   r   rG   r	   utilsr
   markdown_it.mainr   r   r   r<   r9   <module>r      s-    " ) %   +wP wPr<   